@shyft.to/solana-transaction-parser
Version:
Tool for parsing arbitrary Solana transactions with IDL/custom parsers
369 lines • 10 kB
TypeScript
export declare type StakeLayout = {
version: "1.0.0";
name: "stake_program";
instructions: [
{
name: "initialize";
accounts: [
{
name: "stakePubkey";
isMut: true;
isSigner: false;
},
{
name: "clockSysvar";
isMut: true;
isSigner: false;
}
];
args: [
{
name: "index";
type: "u32";
},
{
name: "authorized";
type: {
defined: "AuthorizedType";
};
},
{
name: "lockup";
type: {
defined: "COption<LockupType>";
};
}
];
},
{
name: "authorize";
accounts: [
{
name: "stakePubkey";
isMut: true;
isSigner: false;
},
{
name: "clockSysvar";
isMut: true;
isSigner: false;
},
{
name: "authorizedPubkey";
isMut: false;
isSigner: true;
},
{
name: "custodianPubkey";
isMut: false;
isSigner: true;
optional: true;
}
];
args: [
{
name: "index";
type: "u32";
},
{
name: "newAuthorized";
type: "publicKey";
},
{
name: "stakeAuthorizationType";
type: {
defined: "StakeAuthorizationType";
};
}
];
},
{
name: "authorizeWithSeed";
accounts: [
{
name: "stakePubkey";
isMut: true;
isSigner: false;
},
{
name: "authorizedPubkey";
isMut: false;
isSigner: true;
},
{
name: "clockSysvar";
isMut: true;
isSigner: false;
},
{
name: "custodianPubkey";
isMut: false;
isSigner: true;
optional: true;
}
];
args: [
{
name: "index";
type: "u32";
},
{
name: "newAuthorized";
type: "publicKey";
},
{
name: "stakeAuthorizationType";
type: {
defined: "StakeAuthorizationType";
};
},
{
name: "authoritySeed";
type: "string";
},
{
name: "authorityOwner";
type: "publicKey";
}
];
},
{
name: "deactivate";
accounts: [
{
name: "stakePubkey";
isMut: true;
isSigner: false;
},
{
name: "clockSysvar";
isMut: true;
isSigner: false;
},
{
name: "authorizedPubkey";
isMut: false;
isSigner: true;
}
];
args: [
{
name: "index";
type: "u32";
},
{
name: "stakePubkey";
type: "publicKey";
},
{
name: "authorizedPubkey";
type: "publicKey";
}
];
},
{
name: "delegate";
accounts: [
{
name: "stakePubkey";
isMut: true;
isSigner: false;
},
{
name: "votePubkey";
isMut: false;
isSigner: false;
},
{
name: "clockSysvar";
isMut: false;
isSigner: false;
},
{
name: "sysvarStakeHistory";
isMut: false;
isSigner: false;
},
{
name: "stakeConfig";
isMut: false;
isSigner: false;
},
{
name: "authorizedPubkey";
isMut: false;
isSigner: true;
}
];
args: [
{
name: "index";
type: "u32";
}
];
},
{
name: "merge";
accounts: [
{
name: "stakePubkey";
isMut: true;
isSigner: false;
},
{
name: "sourceStakePubkey";
isMut: true;
isSigner: false;
},
{
name: "clockSysvar";
isMut: false;
isSigner: false;
},
{
name: "sysvarStakeHistory";
isMut: false;
isSigner: false;
},
{
name: "authorizedPubkey";
isMut: false;
isSigner: true;
}
];
args: [
{
name: "index";
type: "u32";
}
];
},
{
name: "split";
accounts: [
{
name: "stakePubkey";
isMut: true;
isSigner: false;
},
{
name: "splitStakePubkey";
isMut: true;
isSigner: false;
},
{
name: "authorizedPubkey";
isMut: false;
isSigner: true;
}
];
args: [
{
name: "index";
type: "u32";
},
{
name: "lamports";
type: "u64";
}
];
},
{
name: "withdraw";
accounts: [
{
name: "stakePubkey";
isMut: true;
isSigner: false;
},
{
name: "toPubkey";
isMut: true;
isSigner: false;
},
{
name: "clockSysvar";
isMut: false;
isSigner: false;
},
{
name: "sysvarStakeHistory";
isMut: false;
isSigner: false;
},
{
name: "authorizedPubkey";
isMut: false;
isSigner: true;
},
{
name: "custodianPubkey";
isMut: false;
isSigner: true;
optional: true;
}
];
args: [
{
name: "index";
type: "u32";
},
{
name: "lamports";
type: "u64";
}
];
}
];
types: [
{
name: "AuthorizedType";
type: {
kind: "struct";
fields: [
{
name: "staker";
type: "publicKey";
},
{
name: "withdrawer";
type: "publicKey";
}
];
};
},
{
name: "LockupType";
type: {
kind: "struct";
fields: [
{
name: "unixTimestamp";
type: "u64";
},
{
name: "epoch";
type: "u64";
},
{
name: "custodian";
type: "publicKey";
}
];
};
},
{
name: "StakeAuthorizationType";
type: {
kind: "struct";
fields: [
{
name: "index";
type: "u32";
}
];
};
}
];
};
//# sourceMappingURL=stake.program.d.ts.map