Type alias ProfileVaultIDL
ProfileVaultIDL: {
accounts: [{
docs: ["An authority over vaults for a profile"];
name: "vaultAuthority";
type: {
fields: [{
docs: ["The data version of this account."];
name: "version";
type: "u8";
}, {
docs: ["The profile the authority is for"];
name: "profile";
type: "publicKey";
}, {
docs: ["The seed of this authority"];
name: "vaultSeed";
type: "publicKey";
}, {
docs: ["The bump for this authority"];
name: "vaultBump";
type: "u8";
}];
kind: "struct";
};
}];
instructions: [{
accounts: [{
docs: ["The profile the vault belongs to"];
isMut: false;
isSigner: false;
name: "profile";
}, {
docs: ["The key with close permissions"];
isMut: false;
isSigner: true;
name: "key";
}, {
docs: ["The vault to close"];
isMut: true;
isSigner: false;
name: "vault";
}, {
docs: ["The authority account for the vault"];
isMut: false;
isSigner: false;
name: "vaultAuthority";
}, {
docs: ["Where to send tokens from the closed account"];
isMut: true;
isSigner: false;
name: "tokensTo";
}, {
docs: ["Where to send the closed lamports"];
isMut: true;
isSigner: false;
name: "fundsTo";
}, {
docs: ["The token program"];
isMut: false;
isSigner: false;
name: "tokenProgram";
}];
args: [{
name: "keyIndex";
type: "u16";
}];
name: "closeVault";
}, {
accounts: [{
docs: ["The profile the vault authority belongs to"];
isMut: false;
isSigner: false;
name: "profile";
}, {
docs: ["The key with create permissions"];
isMut: false;
isSigner: true;
name: "key";
}, {
docs: ["The funder for the new vault authority"];
isMut: true;
isSigner: true;
name: "funder";
}, {
docs: ["The authority to create"];
isMut: true;
isSigner: false;
name: "vaultAuthority";
}, {
docs: ["The system program"];
isMut: false;
isSigner: false;
name: "systemProgram";
}];
args: [{
name: "vaultSeed";
type: "publicKey";
}, {
name: "keyIndex";
type: "u16";
}];
name: "createVaultAuthority";
}, {
accounts: [{
docs: ["The profile the vault belongs to"];
isMut: false;
isSigner: false;
name: "profile";
}, {
docs: ["The key with drain permissions"];
isMut: false;
isSigner: true;
name: "key";
}, {
docs: ["The vault to drain"];
isMut: true;
isSigner: false;
name: "vault";
}, {
docs: ["The authority account for the vault"];
isMut: false;
isSigner: false;
name: "vaultAuthority";
}, {
docs: ["Where to send tokens from the vault"];
isMut: true;
isSigner: false;
name: "tokensTo";
}, {
docs: ["The token program"];
isMut: false;
isSigner: false;
name: "tokenProgram";
}];
args: [{
name: "keyIndex";
type: "u16";
}, {
name: "amount";
type: "u64";
}];
name: "drainVault";
}];
name: "profile_vault";
version: "0.7.1";
}
Type declaration
-
accounts: [{
docs: ["An authority over vaults for a profile"];
name: "vaultAuthority";
type: {
fields: [{
docs: ["The data version of this account."];
name: "version";
type: "u8";
}, {
docs: ["The profile the authority is for"];
name: "profile";
type: "publicKey";
}, {
docs: ["The seed of this authority"];
name: "vaultSeed";
type: "publicKey";
}, {
docs: ["The bump for this authority"];
name: "vaultBump";
type: "u8";
}];
kind: "struct";
};
}]
-
instructions: [{
accounts: [{
docs: ["The profile the vault belongs to"];
isMut: false;
isSigner: false;
name: "profile";
}, {
docs: ["The key with close permissions"];
isMut: false;
isSigner: true;
name: "key";
}, {
docs: ["The vault to close"];
isMut: true;
isSigner: false;
name: "vault";
}, {
docs: ["The authority account for the vault"];
isMut: false;
isSigner: false;
name: "vaultAuthority";
}, {
docs: ["Where to send tokens from the closed account"];
isMut: true;
isSigner: false;
name: "tokensTo";
}, {
docs: ["Where to send the closed lamports"];
isMut: true;
isSigner: false;
name: "fundsTo";
}, {
docs: ["The token program"];
isMut: false;
isSigner: false;
name: "tokenProgram";
}];
args: [{
name: "keyIndex";
type: "u16";
}];
name: "closeVault";
}, {
accounts: [{
docs: ["The profile the vault authority belongs to"];
isMut: false;
isSigner: false;
name: "profile";
}, {
docs: ["The key with create permissions"];
isMut: false;
isSigner: true;
name: "key";
}, {
docs: ["The funder for the new vault authority"];
isMut: true;
isSigner: true;
name: "funder";
}, {
docs: ["The authority to create"];
isMut: true;
isSigner: false;
name: "vaultAuthority";
}, {
docs: ["The system program"];
isMut: false;
isSigner: false;
name: "systemProgram";
}];
args: [{
name: "vaultSeed";
type: "publicKey";
}, {
name: "keyIndex";
type: "u16";
}];
name: "createVaultAuthority";
}, {
accounts: [{
docs: ["The profile the vault belongs to"];
isMut: false;
isSigner: false;
name: "profile";
}, {
docs: ["The key with drain permissions"];
isMut: false;
isSigner: true;
name: "key";
}, {
docs: ["The vault to drain"];
isMut: true;
isSigner: false;
name: "vault";
}, {
docs: ["The authority account for the vault"];
isMut: false;
isSigner: false;
name: "vaultAuthority";
}, {
docs: ["Where to send tokens from the vault"];
isMut: true;
isSigner: false;
name: "tokensTo";
}, {
docs: ["The token program"];
isMut: false;
isSigner: false;
name: "tokenProgram";
}];
args: [{
name: "keyIndex";
type: "u16";
}, {
name: "amount";
type: "u64";
}];
name: "drainVault";
}]
-
name: "profile_vault"
-
version: "0.7.1"