import”@patchwork/contracts/Patchwork721/IPatchworkMetadata.sol”;

Structs


MetadataSchema

Struct defining the overall structure of the metadata and containing entries describing each data field..

struct MetadataSchema {
    uint256 version;
    MetadataSchemaEntry[] entries;
}

MetadataSchemaEntry

Struct defining individual entries within the metadata schema, detailing the properties and types of each data field.

struct MetadataSchemaEntry {
    uint256 id;
    uint256 permissionId;
    FieldType fieldType;
    uint256 fieldCount;
    FieldVisibility visibility;
    uint256 slot;
    uint256 offset;
    string key;
}

Enums


FieldType

Enumeration of possible field data types. This defines the various basic data types for the fields.

enum FieldType {
    BOOLEAN,
    INT8,
    INT16,
    INT32,
    INT64,
    INT128,
    INT256,
    UINT8,
    UINT16,
    UINT32,
    UINT64,
    UINT128,
    UINT256,
    CHAR8,
    CHAR16,
    CHAR32,
    CHAR64,
    LITEREF,
    ADDRESS,
    STRING
}

FieldVisibility

Enumeration of field visibility options. Specifies whether a field is publicly accessible or private.

enum FieldVisibility {
    PUBLIC,
    PRIVATE
}