Type alias CreateSftBuilderParams

CreateSftBuilderParams: { sellerFeeBasisPoints: number; name: string; uri: string; symbol?: undefined | string; isMutable?: undefined | boolean; creators?: undefined | CreatorInput[]; collection?: undefined | Option<PublicKey>; uses?: undefined | Option<Uses>; tokenAddress?: undefined | PublicKey | Signer; mintAuthority?: undefined | Signer; updateAuthority?: undefined | Signer; useNewMint?: undefined | Signer; useExistingMint?: undefined | PublicKey; tokenOwner?: undefined | PublicKey; isCollection?: undefined | boolean; collectionAuthority?: undefined | Option<Signer>; collectionAuthorityIsDelegated?: undefined | boolean; collectionIsSized?: undefined | boolean; freezeAuthority?: undefined | Option<PublicKey>; tokenAmount?: undefined | SplTokenAmount; decimals?: undefined | number; tokenExists?: undefined | boolean; createMintAccountInstructionKey?: undefined | string; initializeMintInstructionKey?: undefined | string; createAssociatedTokenAccountInstructionKey?: undefined | string; createTokenAccountInstructionKey?: undefined | string; initializeTokenInstructionKey?: undefined | string; mintTokensInstructionKey?: undefined | string; createMetadataInstructionKey?: undefined | string }

Type declaration

  • sellerFeeBasisPoints: number

    The royalties in percent basis point (i.e. 250 is 2.5%) that should be paid to the creators on each secondary sale.

  • name: string

    The on-chain name of the asset, e.g. "My SFT".

  • uri: string

    The URI that points to the JSON metadata of the asset.

  • Optional symbol?: undefined | string

    The on-chain symbol of the asset, stored in the Metadata account. E.g. "MYSFT".

    Default Value

    ""

  • Optional isMutable?: undefined | boolean

    Whether or not the SFT's metadata is mutable. When set to false no one can update the Metadata account, not even the update authority.

    Default Value

    true

  • Optional creators?: undefined | CreatorInput[]

    This object provides a way of providing creator information when needed, e.g. when creating or updating NFTs, candy machines, etc.

    It allows us to optionally provide an authority as a Signer so we can both set and verify the creator within the same operation.

    Default Value

    Defaults to using the provided updateAuthority as the only verified creator.

    [{
    address: updateAuthority.publicKey,
    authority: updateAuthority,
    share: 100,
    }]
  • Optional collection?: undefined | Option<PublicKey>

    The Collection NFT that this new SFT belongs to. When null, the created SFT will not be part of a collection.

    Default Value

    null

  • Optional uses?: undefined | Option<Uses>

    When this field is not null, it indicates that the SFT can be "used" by its owner or any approved "use authorities".

    Default Value

    null

  • Optional tokenAddress?: undefined | PublicKey | Signer

    An explicit token account associated with the SFT to create.

    This is completely optional as creating an SFT does not require the existence of a token account.

    When provided, the token account will be created if and only if no account exists at the given address. When that's the case, the tokenAddress must be provided as a Signer as we're creating and initializing the account at this address.

    You may alternatively pass the tokenOwner parameter instead.

    Default Value

    Defaults to not creating and/or minting any token account.

  • Optional mintAuthority?: undefined | Signer

    The authority allowed to mint new tokens for the mint account that is either explicitly provided or about to be created.

    Default Value

    metaplex.identity()

  • Optional updateAuthority?: undefined | Signer

    The authority that will be able to make changes to the created SFT.

    This is required as a Signer because creating the metadata account requires the update authority to be part of the creators array as a verified creator.

    Default Value

    metaplex.identity()

  • Optional useNewMint?: undefined | Signer

    The address of the new mint account as a Signer. This is useful if you already have a generated Keypair for the mint account of the SFT to create.

    Default Value

    Keypair.generate()

  • Optional useExistingMint?: undefined | PublicKey

    The address of the existing mint account that should be converted into an SFT. The account at this address should have the right requirements to become an SFT, e.g. it shouldn't already have a metadata account associated with it.

    Default Value

    Defaults to creating a new mint account with the right requirements.

  • Optional tokenOwner?: undefined | PublicKey

    The owner of a token account associated with the SFT to create.

    This is completely optional as creating an SFT does not require the existence of a token account. When provided, an associated token account will be created from the given owner.

    You may alternatively pass the tokenAddress parameter instead.

    Default Value

    Defaults to not creating and/or minting any token account.

  • Optional isCollection?: undefined | boolean

    Whether the created SFT is a Collection SFT. When set to true, the SFT will be created as a Sized Collection SFT with an initial size of 0.

    Default Value

    false

  • Optional collectionAuthority?: undefined | Option<Signer>

    The collection authority that should sign the created SFT to prove that it is part of the provided collection. When null, the provided collection will not be verified.

    Default Value

    null

  • Optional collectionAuthorityIsDelegated?: undefined | boolean

    Whether or not the provided collectionAuthority is a delegated collection authority, i.e. it was approved by the update authority using metaplex.nfts().approveCollectionAuthority().

    Default Value

    false

  • Optional collectionIsSized?: undefined | boolean

    Whether or not the provided collection is a sized collection and not a legacy collection.

    Default Value

    true

  • Optional freezeAuthority?: undefined | Option<PublicKey>

    The authority allowed to freeze token account associated with the mint account that is either explicitly provided or about to be created.

    Default Value

    metaplex.identity().publicKey

  • Optional tokenAmount?: undefined | SplTokenAmount

    The amount of tokens to mint to the token account initially if a token account is created.

    This is only relevant if either the tokenOwner or tokenAddress is provided.

    Default Value

    Defaults to not minting any tokens.

  • Optional decimals?: undefined | number

    The number of decimal points used to define token amounts.

    Default Value

    0

  • Optional tokenExists?: undefined | boolean

    Whether or not the provided token account already exists. If false, we'll add another instruction to create it.

    Default Value

    true

  • Optional createMintAccountInstructionKey?: undefined | string

    A key to distinguish the instruction that creates the mint account.

  • Optional initializeMintInstructionKey?: undefined | string

    A key to distinguish the instruction that initializes the mint account.

  • Optional createAssociatedTokenAccountInstructionKey?: undefined | string

    A key to distinguish the instruction that creates the associated token account.

  • Optional createTokenAccountInstructionKey?: undefined | string

    A key to distinguish the instruction that creates the token account.

  • Optional initializeTokenInstructionKey?: undefined | string

    A key to distinguish the instruction that initializes the token account.

  • Optional mintTokensInstructionKey?: undefined | string

    A key to distinguish the instruction that mints tokens.

  • Optional createMetadataInstructionKey?: undefined | string

    A key to distinguish the instruction that creates the metadata account.

Generated using TypeDoc