Class: Metadata

Properties overview

  • image: string;
  • map: readonly map: MetadataMap;
  • name: readonly name: string;
  • plugins: MetadataPlugin[];
  • traits: {} = {};
  • Returns: {
    key: Field;
    value: MetadataValue;
    }
  • key: Field;
  • value: MetadataValue;
  • Returns: {
    banner: string;
    description: string;
    image: string;
    metadataRoot: string;
    name: string;
    traits: {
    isPrivate: boolean;
    key: string;
    type: string;
    value: string | object;
    }[];
    }
  • image: string;
  • metadataRoot: string;
  • name: string;
  • traits: {
    isPrivate: boolean;
    key: string;
    type: string;
    value: string | object;
    }[];

Methods overview

Defined in: packages/nft/src/metadata/metadata.ts:243

Represents the metadata for an NFT, including traits and associated data.

Constructors

new Metadata()

new Metadata(params: {
  banner: string;
  description: string;
  image: string;
  name: string;
  plugins: MetadataPlugin[];
 }): Metadata

Defined in: packages/nft/src/metadata/metadata.ts:283

Creates a new Metadata instance.

Parameters

params

The parameters for the metadata, including name, image, description, banner, and plugins.

banner

string

description

string

image

string

name

string

plugins

MetadataPlugin[]

Returns

Metadata

Properties

banner?

optional banner: string;

Defined in: packages/nft/src/metadata/metadata.ts:259

Optional banner image for the NFT.


description?

optional description: string;

Defined in: packages/nft/src/metadata/metadata.ts:263

Optional description of the NFT.


image

image: string;

Defined in: packages/nft/src/metadata/metadata.ts:255

The image associated with the NFT.


map

readonly map: MetadataMap;

Defined in: packages/nft/src/metadata/metadata.ts:247

The underlying map storing the metadata key-value pairs.


name

readonly name: string;

Defined in: packages/nft/src/metadata/metadata.ts:251

The name of the NFT.


plugins

plugins: MetadataPlugin[];

Defined in: packages/nft/src/metadata/metadata.ts:267

Array of metadata plugins used for custom traits.


traits

traits: {} = {};

Defined in: packages/nft/src/metadata/metadata.ts:271

Object containing the traits of the NFT.

Index Signature

[key: string]: {
  isPrivate: boolean;
  type: string;
  value: unknown;
}

Methods

addTrait()

addTrait(params: {
  isPrivate: boolean;
  key: string;
  type: string;
  value: unknown;
 }): {
  key: Field;
  value: MetadataValue;
}

Defined in: packages/nft/src/metadata/metadata.ts:328

Adds a trait to the metadata.

Parameters

params

The parameters including key, type, value, and isPrivate.

isPrivate

boolean

key

string

type

string

value

unknown

Returns

{
  key: Field;
  value: MetadataValue;
}

An object containing the key and the metadata value.

key
key: Field;
value
value: MetadataValue;

toJSON()

toJSON(includePrivateTraits: boolean): {
  banner: string;
  description: string;
  image: string;
  metadataRoot: string;
  name: string;
  traits: {
     isPrivate: boolean;
     key: string;
     type: string;
     value: string | object;
    }[];
}

Defined in: packages/nft/src/metadata/metadata.ts:397

Converts the metadata to a JSON representation.

Parameters

includePrivateTraits

boolean = false

Whether to include private traits.

Returns

{
  banner: string;
  description: string;
  image: string;
  metadataRoot: string;
  name: string;
  traits: {
     isPrivate: boolean;
     key: string;
     type: string;
     value: string | object;
    }[];
}

The JSON representation of the metadata.

banner?
optional banner: string;
description?
optional description: string;
image
image: string;
metadataRoot
metadataRoot: string;
name
name: string;
traits
traits: {
  isPrivate: boolean;
  key: string;
  type: string;
  value: string | object;
 }[];

fromJSON()

static fromJSON(params: {
  checkRoot: boolean;
  json: {
     banner: string;
     description: string;
     image: string;
     metadataRoot: string;
     name: string;
     traits: {
        isPrivate: boolean;
        key: string;
        type: string;
        value: string | object;
       }[];
    };
  plugins: MetadataPlugin[];
 }): Metadata

Defined in: packages/nft/src/metadata/metadata.ts:466

Constructs a Metadata instance from JSON data.

Parameters

params

The parameters including json data, checkRoot flag, and plugins.

checkRoot

boolean

json

{
banner: string;
description: string;
image: string;
metadataRoot: string;
name: string;
traits: {
isPrivate: boolean;
key: string;
type: string;
value: string | object;
}[];
}

json.banner

string

json.description

string

json.image

string

json.metadataRoot

string

json.name

string

json.traits

{
isPrivate: boolean;
key: string;
type: string;
value: string | object;
}[]

plugins

MetadataPlugin[]

Returns

Metadata

A new Metadata instance.