{"version":"0.1.1","name":"venko","instructions":[{"name":"createStream","accounts":[{"name":"streamMint","isMut":true,"isSigner":false},{"name":"stream","isMut":true,"isSigner":false},{"name":"underlyingMint","isMut":false,"isSigner":false},{"name":"underlyingTokens","isMut":false,"isSigner":false},{"name":"destination","isMut":true,"isSigner":false},{"name":"crateToken","isMut":true,"isSigner":false},{"name":"payer","isMut":true,"isSigner":true},{"name":"systemProgram","isMut":false,"isSigner":false},{"name":"crateTokenProgram","isMut":false,"isSigner":false},{"name":"tokenProgram","isMut":false,"isSigner":false}],"args":[{"name":"streamBump","type":"u8"},{"name":"crateBump","type":"u8"},{"name":"startTs","type":"i64"},{"name":"cliffTs","type":"i64"},{"name":"endTs","type":"i64"},{"name":"revoker","type":"publicKey"}]},{"name":"redeem","accounts":[{"name":"streamMint","isMut":true,"isSigner":false},{"name":"stream","isMut":true,"isSigner":false},{"name":"sourceStreamTokens","isMut":true,"isSigner":false},{"name":"underlyingTokens","isMut":true,"isSigner":false},{"name":"destinationTokens","isMut":true,"isSigner":false},{"name":"crateToken","isMut":false,"isSigner":false},{"name":"userAuthority","isMut":false,"isSigner":true},{"name":"systemProgram","isMut":false,"isSigner":false},{"name":"crateTokenProgram","isMut":false,"isSigner":false},{"name":"tokenProgram","isMut":false,"isSigner":false}],"args":[{"name":"amount","type":"u64"}]},{"name":"revoke","accounts":[{"name":"stream","isMut":true,"isSigner":false},{"name":"crateToken","isMut":false,"isSigner":false},{"name":"underlyingTokens","isMut":true,"isSigner":false},{"name":"destinationTokens","isMut":true,"isSigner":false},{"name":"revoker","isMut":false,"isSigner":true},{"name":"crateTokenProgram","isMut":false,"isSigner":false},{"name":"tokenProgram","isMut":false,"isSigner":false}],"args":[]}],"accounts":[{"name":"Stream","type":{"kind":"struct","fields":[{"name":"mint","type":"publicKey"},{"name":"bump","type":"u8"},{"name":"revoker","type":"publicKey"},{"name":"crateToken","type":"publicKey"},{"name":"underlyingMint","type":"publicKey"},{"name":"underlyingTokens","type":"publicKey"},{"name":"initialAmount","type":"u64"},{"name":"redeemedAmount","type":"u64"},{"name":"startTs","type":"i64"},{"name":"cliffTs","type":"i64"},{"name":"endTs","type":"i64"}]}}],"events":[{"name":"StreamCreateEvent","fields":[{"name":"stream","type":"publicKey","index":true},{"name":"mint","type":"publicKey","index":true},{"name":"amount","type":"u64","index":false},{"name":"startTs","type":"i64","index":false},{"name":"cliffTs","type":"i64","index":false},{"name":"endTs","type":"i64","index":false}]},{"name":"RedeemEvent","fields":[{"name":"stream","type":"publicKey","index":false},{"name":"mint","type":"publicKey","index":false},{"name":"amount","type":"u64","index":false},{"name":"amountRemaining","type":"u64","index":false}]},{"name":"RevokeEvent","fields":[{"name":"stream","type":"publicKey","index":false},{"name":"mint","type":"publicKey","index":false},{"name":"revoker","type":"publicKey","index":false}]}],"errors":[{"code":6000,"name":"InvalidSchedule","msg":"Stream must end after its start time."},{"code":6001,"name":"InsufficientWithdrawalBalance","msg":"Insufficient withdrawal balance."},{"code":6002,"name":"InsufficientStreamTokens","msg":"Insufficient stream token balance."},{"code":6003,"name":"Irrevocable","msg":"Stream is irrevocable."},{"code":6004,"name":"NotRevoker","msg":"Must be revoker to perform this operation."}]}