@crateprotocol/yi
Version:
The TypeScript SDK for Yi Token by Crate Protocol.
269 lines • 7.79 kB
TypeScript
export declare type YiIDL = {
version: "0.4.0";
name: "yi";
instructions: [
{
name: "createYiToken";
accounts: [
{
name: "mint";
isMut: false;
isSigner: false;
},
{
name: "yiToken";
isMut: true;
isSigner: false;
pda: {
seeds: [
{
kind: "const";
type: "string";
value: "YiToken";
},
{
kind: "account";
type: "publicKey";
account: "Mint";
path: "mint";
}
];
};
},
{
name: "underlyingTokenMint";
isMut: false;
isSigner: false;
},
{
name: "underlyingTokens";
isMut: false;
isSigner: false;
},
{
name: "payer";
isMut: true;
isSigner: true;
},
{
name: "systemProgram";
isMut: false;
isSigner: false;
}
];
args: [];
},
{
name: "createYiTokenWithFees";
accounts: [
{
name: "mint";
isMut: false;
isSigner: false;
},
{
name: "yiToken";
isMut: true;
isSigner: false;
pda: {
seeds: [
{
kind: "const";
type: "string";
value: "YiToken";
},
{
kind: "account";
type: "publicKey";
account: "Mint";
path: "mint";
}
];
};
},
{
name: "underlyingTokenMint";
isMut: false;
isSigner: false;
},
{
name: "underlyingTokens";
isMut: false;
isSigner: false;
},
{
name: "payer";
isMut: true;
isSigner: true;
},
{
name: "systemProgram";
isMut: false;
isSigner: false;
}
];
args: [
{
name: "stakeFeeMillibps";
type: "u32";
},
{
name: "unstakeFeeMillibps";
type: "u32";
}
];
},
{
name: "stake";
accounts: [
{
name: "yiToken";
isMut: false;
isSigner: false;
},
{
name: "yiMint";
isMut: true;
isSigner: false;
},
{
name: "sourceTokens";
isMut: true;
isSigner: false;
},
{
name: "sourceAuthority";
isMut: false;
isSigner: true;
},
{
name: "yiUnderlyingTokens";
isMut: true;
isSigner: false;
},
{
name: "destinationYiTokens";
isMut: true;
isSigner: false;
},
{
name: "tokenProgram";
isMut: false;
isSigner: false;
}
];
args: [
{
name: "amount";
type: "u64";
}
];
},
{
name: "unstake";
accounts: [
{
name: "yiToken";
isMut: false;
isSigner: false;
},
{
name: "yiMint";
isMut: true;
isSigner: false;
},
{
name: "sourceYiTokens";
isMut: true;
isSigner: false;
},
{
name: "sourceAuthority";
isMut: false;
isSigner: true;
},
{
name: "yiUnderlyingTokens";
isMut: true;
isSigner: false;
},
{
name: "destinationUnderlyingTokens";
isMut: true;
isSigner: false;
},
{
name: "tokenProgram";
isMut: false;
isSigner: false;
}
];
args: [
{
name: "amount";
type: "u64";
}
];
}
];
accounts: [
{
name: "YiToken";
type: {
kind: "struct";
fields: [
{
name: "mint";
type: "publicKey";
},
{
name: "bump";
type: "u8";
},
{
name: "padding";
type: {
array: ["u8", 7];
};
},
{
name: "underlyingTokenMint";
type: "publicKey";
},
{
name: "underlyingTokens";
type: "publicKey";
},
{
name: "stakeFeeMillibps";
type: "u32";
},
{
name: "unstakeFeeMillibps";
type: "u32";
}
];
};
}
];
errors: [
{
code: 6000;
name: "DecimalMismatch";
msg: "Decimal mismatch.";
},
{
code: 6001;
name: "InvalidStakeFee";
msg: "Stake fee cannot exceed 100%.";
},
{
code: 6002;
name: "InvalidUnstakeFee";
msg: "Unstake fee cannot exceed 100%.";
}
];
};
export declare const YiJSON: YiIDL;
export declare const YiErrors: import("@saberhq/anchor-contrib").ErrorMap<YiIDL>;
//# sourceMappingURL=yi.d.ts.map