/** * This code was AUTOGENERATED using the kinobi library. * Please DO NOT EDIT THIS FILE, instead use visitors * to add features, then rerun kinobi to update it. * * @see https://github.com/metaplex-foundation/kinobi */ import { Context, Option, OptionOrNullable, Pda, PublicKey, Signer, TransactionBuilder } from '@metaplex-foundation/umi'; import { Serializer } from '@metaplex-foundation/umi/serializers'; import { AuthorizationData, AuthorizationDataArgs, TokenStandardArgs } from '../types'; export type LockV1InstructionAccounts = { /** Delegate or freeze authority */ authority?: Signer; /** Token owner account */ tokenOwner?: PublicKey | Pda; /** Token account */ token?: PublicKey | Pda; /** Mint account */ mint: PublicKey | Pda; /** Metadata account */ metadata?: PublicKey | Pda; /** Edition account */ edition?: PublicKey | Pda; /** Token record account */ tokenRecord?: PublicKey | Pda; /** Payer */ payer?: Signer; /** System program */ systemProgram?: PublicKey | Pda; /** System program */ sysvarInstructions?: PublicKey | Pda; /** SPL Token Program */ splTokenProgram?: PublicKey | Pda; /** Token Authorization Rules Program */ authorizationRulesProgram?: PublicKey | Pda; /** Token Authorization Rules account */ authorizationRules?: PublicKey | Pda; }; export type LockV1InstructionData = { discriminator: number; lockV1Discriminator: number; authorizationData: Option; }; export type LockV1InstructionDataArgs = { authorizationData?: OptionOrNullable; }; export declare function getLockV1InstructionDataSerializer(): Serializer; export type LockV1InstructionExtraArgs = { tokenStandard: TokenStandardArgs; }; export type LockV1InstructionArgs = LockV1InstructionDataArgs & LockV1InstructionExtraArgs; export declare function lockV1(context: Pick, input: LockV1InstructionAccounts & LockV1InstructionArgs): TransactionBuilder;