@orca-so/wavebreak
Version:
The wavebreak JS client for interacting with the wavebreak program.
41 lines (40 loc) • 3.54 kB
TypeScript
import { Address, Codec, Decoder, Encoder, IAccountMeta, IAccountSignerMeta, IInstruction, IInstructionWithAccounts, IInstructionWithData, ReadonlyAccount, ReadonlySignerAccount, TransactionSigner, WritableAccount } from '@solana/kit';
import { WAVEBREAK_PROGRAM_ADDRESS } from '../programs';
import { MintConfigUpdateType, MintConfigUpdateTypeArgs } from '../types';
export declare const MINT_CONFIG_UPDATE_DISCRIMINATOR = 26;
export declare function getMintConfigUpdateDiscriminatorBytes(): import('@solana/kit').ReadonlyUint8Array;
export type MintConfigUpdateInstruction<TProgram extends string = typeof WAVEBREAK_PROGRAM_ADDRESS, TAccountAuthority extends string | IAccountMeta<string> = string, TAccountMintConfig extends string | IAccountMeta<string> = string, TAccountAuthorityConfig extends string | IAccountMeta<string> = string, TRemainingAccounts extends readonly IAccountMeta<string>[] = []> = IInstruction<TProgram> & IInstructionWithData<Uint8Array> & IInstructionWithAccounts<[
TAccountAuthority extends string ? ReadonlySignerAccount<TAccountAuthority> & IAccountSignerMeta<TAccountAuthority> : TAccountAuthority,
TAccountMintConfig extends string ? WritableAccount<TAccountMintConfig> : TAccountMintConfig,
TAccountAuthorityConfig extends string ? ReadonlyAccount<TAccountAuthorityConfig> : TAccountAuthorityConfig,
...TRemainingAccounts
]>;
export type MintConfigUpdateInstructionData = {
discriminator: number;
update: MintConfigUpdateType;
};
export type MintConfigUpdateInstructionDataArgs = {
update: MintConfigUpdateTypeArgs;
};
export declare function getMintConfigUpdateInstructionDataEncoder(): Encoder<MintConfigUpdateInstructionDataArgs>;
export declare function getMintConfigUpdateInstructionDataDecoder(): Decoder<MintConfigUpdateInstructionData>;
export declare function getMintConfigUpdateInstructionDataCodec(): Codec<MintConfigUpdateInstructionDataArgs, MintConfigUpdateInstructionData>;
export type MintConfigUpdateInput<TAccountAuthority extends string = string, TAccountMintConfig extends string = string, TAccountAuthorityConfig extends string = string> = {
authority: TransactionSigner<TAccountAuthority>;
mintConfig: Address<TAccountMintConfig>;
authorityConfig: Address<TAccountAuthorityConfig>;
update: MintConfigUpdateInstructionDataArgs["update"];
};
export declare function getMintConfigUpdateInstruction<TAccountAuthority extends string, TAccountMintConfig extends string, TAccountAuthorityConfig extends string, TProgramAddress extends Address = typeof WAVEBREAK_PROGRAM_ADDRESS>(input: MintConfigUpdateInput<TAccountAuthority, TAccountMintConfig, TAccountAuthorityConfig>, config?: {
programAddress?: TProgramAddress;
}): MintConfigUpdateInstruction<TProgramAddress, TAccountAuthority, TAccountMintConfig, TAccountAuthorityConfig>;
export type ParsedMintConfigUpdateInstruction<TProgram extends string = typeof WAVEBREAK_PROGRAM_ADDRESS, TAccountMetas extends readonly IAccountMeta[] = readonly IAccountMeta[]> = {
programAddress: Address<TProgram>;
accounts: {
authority: TAccountMetas[0];
mintConfig: TAccountMetas[1];
authorityConfig: TAccountMetas[2];
};
data: MintConfigUpdateInstructionData;
};
export declare function parseMintConfigUpdateInstruction<TProgram extends string, TAccountMetas extends readonly IAccountMeta[]>(instruction: IInstruction<TProgram> & IInstructionWithAccounts<TAccountMetas> & IInstructionWithData<Uint8Array>): ParsedMintConfigUpdateInstruction<TProgram, TAccountMetas>;