/** * 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 { Amount, Context, Option, OptionOrNullable, Pda, PublicKey, Signer, TransactionBuilder } from '@metaplex-foundation/umi'; import { Serializer } from '@metaplex-foundation/umi/serializers'; import { PickPartial } from '../shared'; import { Collection, CollectionArgs, CollectionDetails, CollectionDetailsArgs, Creator, CreatorArgs, PrintSupply, PrintSupplyArgs, TokenStandard, TokenStandardArgs, Uses, UsesArgs } from '../types'; export type CreateV1InstructionAccounts = { /** Unallocated metadata account with address as pda of ['metadata', program id, mint id] */ metadata?: PublicKey | Pda; /** Unallocated edition account with address as pda of ['metadata', program id, mint, 'edition'] */ masterEdition?: PublicKey | Pda; /** Mint of token asset */ mint: PublicKey | Pda | Signer; /** Mint authority */ authority?: Signer; /** Payer */ payer?: Signer; /** Update authority for the metadata account */ updateAuthority?: PublicKey | Pda | Signer; /** System program */ systemProgram?: PublicKey | Pda; /** Instructions sysvar account */ sysvarInstructions?: PublicKey | Pda; /** SPL Token program */ splTokenProgram?: PublicKey | Pda; }; export type CreateV1InstructionData = { discriminator: number; createV1Discriminator: number; name: string; symbol: string; uri: string; sellerFeeBasisPoints: Amount<'%', 2>; creators: Option>; primarySaleHappened: boolean; isMutable: boolean; tokenStandard: TokenStandard; collection: Option; uses: Option; collectionDetails: Option; ruleSet: Option; decimals: Option; printSupply: Option; }; export type CreateV1InstructionDataArgs = { name: string; symbol?: string; uri: string; sellerFeeBasisPoints: Amount<'%', 2>; creators: OptionOrNullable>; primarySaleHappened?: boolean; isMutable?: boolean; tokenStandard?: TokenStandardArgs; collection?: OptionOrNullable; uses?: OptionOrNullable; collectionDetails: OptionOrNullable; ruleSet?: OptionOrNullable; decimals: OptionOrNullable; printSupply: OptionOrNullable; }; export declare function getCreateV1InstructionDataSerializer(): Serializer; export type CreateV1InstructionExtraArgs = { isCollection?: boolean; }; export type CreateV1InstructionArgs = PickPartial; export declare function createV1(context: Pick, input: CreateV1InstructionAccounts & CreateV1InstructionArgs): TransactionBuilder;