Metadata.ts
Metadata overview
Table of contents
constructors
empty
Create an empty Metadata map.
Signature
export declare const empty: () => MetadataAdded in v2.0.0
fromEntries
Create Metadata from an array of label-metadatum pairs.
Signature
export declare const fromEntries: (
entries: Array<[MetadataLabel, TransactionMetadatum.TransactionMetadatum]>
) => MetadataAdded in v2.0.0
remove
Remove a metadata entry by label.
Signature
export declare const remove: (metadata: Metadata, label: MetadataLabel) => MetadataAdded in v2.0.0
set
Add or update a metadata entry.
Signature
export declare const set: (
metadata: Metadata,
label: MetadataLabel,
metadatum: TransactionMetadatum.TransactionMetadatum
) => MetadataAdded in v2.0.0
encoding
toCBORBytes
Convert Metadata to CBOR bytes.
Signature
export declare const toCBORBytes: (
options?: CBOR.CodecOptions
) => (
a: Map<
bigint,
| string
| bigint
| Uint8Array
| Map<TransactionMetadatum.TransactionMetadatum, TransactionMetadatum.TransactionMetadatum>
| readonly TransactionMetadatum.TransactionMetadatum[]
>,
overrideOptions?: ParseOptions
) => anyAdded in v2.0.0
toCBORHex
Convert Metadata to CBOR hex string.
Signature
export declare const toCBORHex: (
options?: CBOR.CodecOptions
) => (
a: Map<
bigint,
| string
| bigint
| Uint8Array
| Map<TransactionMetadatum.TransactionMetadatum, TransactionMetadatum.TransactionMetadatum>
| readonly TransactionMetadatum.TransactionMetadatum[]
>,
overrideOptions?: ParseOptions
) => stringAdded in v2.0.0
model
MetadataLabel (type alias)
Type representing a transaction metadatum label (uint).
Signature
export type MetadataLabel = typeof MetadataLabel.TypeAdded in v2.0.0
parsing
fromCBORBytes
Parse Metadata from CBOR bytes.
Signature
export declare const fromCBORBytes: (
options?: CBOR.CodecOptions
) => (
i: any,
overrideOptions?: ParseOptions
) => Map<
bigint,
| string
| bigint
| Uint8Array
| Map<TransactionMetadatum.TransactionMetadatum, TransactionMetadatum.TransactionMetadatum>
| readonly TransactionMetadatum.TransactionMetadatum[]
>Added in v2.0.0
fromCBORHex
Parse Metadata from CBOR hex string.
Signature
export declare const fromCBORHex: (
options?: CBOR.CodecOptions
) => (
i: string,
overrideOptions?: ParseOptions
) => Map<
bigint,
| string
| bigint
| Uint8Array
| Map<TransactionMetadatum.TransactionMetadatum, TransactionMetadatum.TransactionMetadatum>
| readonly TransactionMetadatum.TransactionMetadatum[]
>Added in v2.0.0
schemas
CDDLSchema
CDDL schema for Metadata (CBOR-compatible representation). Maps bigint labels to transaction metadatum values.
Uses Schema.typeSchema(TransactionMetadatumSchema) because CBOR decoding returns runtime types (bigint, Uint8Array, Map) directly.
Signature
export declare const CDDLSchema: Schema.MapFromSelf<
typeof Schema.BigIntFromSelf,
Schema.suspend<
| string
| bigint
| Uint8Array
| Map<TransactionMetadatum.TransactionMetadatum, TransactionMetadatum.TransactionMetadatum>
| readonly TransactionMetadatum.TransactionMetadatum[],
| string
| bigint
| Uint8Array
| Map<TransactionMetadatum.TransactionMetadatum, TransactionMetadatum.TransactionMetadatum>
| readonly TransactionMetadatum.TransactionMetadatum[],
never
>
>Added in v2.0.0
FromCBORBytes
Schema transformer for Metadata from CBOR bytes.
Signature
export declare const FromCBORBytes: (
options?: CBOR.CodecOptions
) => Schema.transform<
Schema.transformOrFail<
typeof Schema.Uint8ArrayFromSelf,
Schema.declare<CBOR.CBOR, CBOR.CBOR, readonly [], never>,
never
>,
Schema.transformOrFail<
Schema.MapFromSelf<
typeof Schema.BigIntFromSelf,
Schema.suspend<
| string
| bigint
| Uint8Array
| Map<TransactionMetadatum.TransactionMetadatum, TransactionMetadatum.TransactionMetadatum>
| readonly TransactionMetadatum.TransactionMetadatum[],
| string
| bigint
| Uint8Array
| Map<TransactionMetadatum.TransactionMetadatum, TransactionMetadatum.TransactionMetadatum>
| readonly TransactionMetadatum.TransactionMetadatum[],
never
>
>,
Schema.SchemaClass<
Map<
bigint,
| string
| bigint
| Uint8Array
| Map<TransactionMetadatum.TransactionMetadatum, TransactionMetadatum.TransactionMetadatum>
| readonly TransactionMetadatum.TransactionMetadatum[]
>,
Map<
bigint,
| string
| bigint
| Uint8Array
| Map<TransactionMetadatum.TransactionMetadatum, TransactionMetadatum.TransactionMetadatum>
| readonly TransactionMetadatum.TransactionMetadatum[]
>,
never
>,
never
>
>Added in v2.0.0
FromCBORHex
Schema transformer for Metadata from CBOR hex string.
Signature
export declare const FromCBORHex: (
options?: CBOR.CodecOptions
) => Schema.transform<
Schema.Schema<Uint8Array, string, never>,
Schema.transform<
Schema.transformOrFail<
typeof Schema.Uint8ArrayFromSelf,
Schema.declare<CBOR.CBOR, CBOR.CBOR, readonly [], never>,
never
>,
Schema.transformOrFail<
Schema.MapFromSelf<
typeof Schema.BigIntFromSelf,
Schema.suspend<
| string
| bigint
| Uint8Array
| Map<TransactionMetadatum.TransactionMetadatum, TransactionMetadatum.TransactionMetadatum>
| readonly TransactionMetadatum.TransactionMetadatum[],
| string
| bigint
| Uint8Array
| Map<TransactionMetadatum.TransactionMetadatum, TransactionMetadatum.TransactionMetadatum>
| readonly TransactionMetadatum.TransactionMetadatum[],
never
>
>,
Schema.SchemaClass<
Map<
bigint,
| string
| bigint
| Uint8Array
| Map<TransactionMetadatum.TransactionMetadatum, TransactionMetadatum.TransactionMetadatum>
| readonly TransactionMetadatum.TransactionMetadatum[]
>,
Map<
bigint,
| string
| bigint
| Uint8Array
| Map<TransactionMetadatum.TransactionMetadatum, TransactionMetadatum.TransactionMetadatum>
| readonly TransactionMetadatum.TransactionMetadatum[]
>,
never
>,
never
>
>
>Added in v2.0.0
FromCDDL
Transform schema from CDDL to Metadata.
Signature
export declare const FromCDDL: Schema.transformOrFail<
Schema.MapFromSelf<
typeof Schema.BigIntFromSelf,
Schema.suspend<
| string
| bigint
| Uint8Array
| Map<TransactionMetadatum.TransactionMetadatum, TransactionMetadatum.TransactionMetadatum>
| readonly TransactionMetadatum.TransactionMetadatum[],
| string
| bigint
| Uint8Array
| Map<TransactionMetadatum.TransactionMetadatum, TransactionMetadatum.TransactionMetadatum>
| readonly TransactionMetadatum.TransactionMetadatum[],
never
>
>,
Schema.SchemaClass<
Map<
bigint,
| string
| bigint
| Uint8Array
| Map<TransactionMetadatum.TransactionMetadatum, TransactionMetadatum.TransactionMetadatum>
| readonly TransactionMetadatum.TransactionMetadatum[]
>,
Map<
bigint,
| string
| bigint
| Uint8Array
| Map<TransactionMetadatum.TransactionMetadatum, TransactionMetadatum.TransactionMetadatum>
| readonly TransactionMetadatum.TransactionMetadatum[]
>,
never
>,
never
>Added in v2.0.0
Metadata
Schema for transaction metadata (map from labels to metadata).
Represents: metadata = {* transaction_metadatum_label => transaction_metadatum}Signature
export declare const Metadata: Schema.transform<
Schema.Array$<
Schema.Tuple2<
Schema.refine<bigint, typeof Schema.BigInt>,
Schema.Union<
[
Schema.transform<
Schema.Array$<
Schema.Tuple2<
Schema.suspend<
TransactionMetadatum.TransactionMetadatum,
TransactionMetadatum.TransactionMetadatumEncoded,
never
>,
Schema.suspend<
TransactionMetadatum.TransactionMetadatum,
TransactionMetadatum.TransactionMetadatumEncoded,
never
>
>
>,
Schema.MapFromSelf<
Schema.SchemaClass<
TransactionMetadatum.TransactionMetadatum,
TransactionMetadatum.TransactionMetadatum,
never
>,
Schema.SchemaClass<
TransactionMetadatum.TransactionMetadatum,
TransactionMetadatum.TransactionMetadatum,
never
>
>
>,
Schema.Array$<
Schema.suspend<
TransactionMetadatum.TransactionMetadatum,
TransactionMetadatum.TransactionMetadatumEncoded,
never
>
>,
Schema.refine<bigint, typeof Schema.BigInt>,
Schema.Schema<Uint8Array, string, never>,
Schema.SchemaClass<string, string, never>
]
>
>
>,
Schema.MapFromSelf<
Schema.SchemaClass<bigint, bigint, never>,
Schema.SchemaClass<
| string
| bigint
| Uint8Array
| Map<TransactionMetadatum.TransactionMetadatum, TransactionMetadatum.TransactionMetadatum>
| readonly TransactionMetadatum.TransactionMetadatum[],
| string
| bigint
| Uint8Array
| Map<TransactionMetadatum.TransactionMetadatum, TransactionMetadatum.TransactionMetadatum>
| readonly TransactionMetadatum.TransactionMetadatum[],
never
>
>
>Added in v2.0.0
MetadataLabel
Schema for transaction metadatum label (uint64 per Cardano CDDL spec). Labels must be in range 0 to 2^64-1.
Signature
export declare const MetadataLabel: Schema.refine<bigint, typeof Schema.BigInt>Added in v2.0.0
testing
arbitrary
FastCheck arbitrary for generating random Metadata instances.
Signature
export declare const arbitrary: FastCheck.Arbitrary<
Map<
bigint,
| string
| bigint
| Uint8Array
| Map<TransactionMetadatum.TransactionMetadatum, TransactionMetadatum.TransactionMetadatum>
| readonly TransactionMetadatum.TransactionMetadatum[]
>
>Added in v2.0.0
utilities
entries
Get all entries in the metadata.
Signature
export declare const entries: (metadata: Metadata) => Array<[MetadataLabel, TransactionMetadatum.TransactionMetadatum]>Added in v2.0.0
get
Get a metadata entry by label.
Signature
export declare const get: (
metadata: Metadata,
label: MetadataLabel
) => TransactionMetadatum.TransactionMetadatum | undefinedAdded in v2.0.0
has
Check if a label exists in the metadata.
Signature
export declare const has: (metadata: Metadata, label: MetadataLabel) => booleanAdded in v2.0.0
labels
Get all labels in the metadata.
Signature
export declare const labels: (metadata: Metadata) => Array<MetadataLabel>Added in v2.0.0
size
Get the size (number of entries) of the metadata.
Signature
export declare const size: (metadata: Metadata) => numberAdded in v2.0.0
values
Get all metadata values in the metadata.
Signature
export declare const values: (metadata: Metadata) => Array<TransactionMetadatum.TransactionMetadatum>Added in v2.0.0
utils
Metadata (type alias)
Signature
export type Metadata = typeof Metadata.Type