Skip to main content

Class: BcsEnum<T, Name>

Extends

  • BcsType<EnumOutputShape<{ [K in keyof T]: T[K] extends BcsType<infer U, any> ? U : true }>, EnumInputShape<{ [K in keyof T]: T[K] extends BcsType<any, infer U, any> ? U : boolean | object | null }>, Name>

Type Parameters

T

T extends Record<string, BcsType<any> | null>

Name

Name extends string = string

Constructors

Constructor

new BcsEnum<T, Name>(__namedParameters): BcsEnum<T, Name>

Parameters

__namedParameters

BcsEnumOptions<T, Name>

Returns

BcsEnum<T, Name>

Overrides

BcsType.constructor

Properties

$inferType

$inferType: EnumOutputShape

Inherited from

BcsType.$inferType


$inferInput

$inferInput: EnumInputShape

Inherited from

BcsType.$inferInput


name

name: Name

Inherited from

BcsType.name


read()

read: (reader) => EnumOutputShape

Parameters

reader

BcsReader

Returns

EnumOutputShape

Inherited from

BcsType.read


serializedSize()

serializedSize: (value, options?) => number | null

Parameters

value

EnumInputShape

options?

BcsWriterOptions

Returns

number | null

Inherited from

BcsType.serializedSize


validate()

validate: (value) => void

Parameters

value

EnumInputShape

Returns

void

Inherited from

BcsType.validate

Methods

write()

write(value, writer): void

Parameters

value

EnumInputShape

writer

BcsWriter

Returns

void

Inherited from

BcsType.write


serialize()

serialize(value, options?): SerializedBcs<EnumOutputShape<{ [K in string | number | symbol]: T[K] extends BcsType<U, any, string> ? U : true }, Extract<keyof T, string>, { [K in string | number | symbol]: T[K] extends BcsType<U, any, string> ? U : true }[keyof T] extends Type ? Type extends BcsType<U, U, string> ? U : never : never>, EnumInputShape<{ [K in string | number | symbol]: T[K] extends BcsType<any, U, any> ? U : boolean | object | null }>>

Parameters

value

EnumInputShape

options?

BcsWriterOptions

Returns

SerializedBcs<EnumOutputShape<{ [K in string | number | symbol]: T[K] extends BcsType<U, any, string> ? U : true }, Extract<keyof T, string>, { [K in string | number | symbol]: T[K] extends BcsType<U, any, string> ? U : true }[keyof T] extends Type ? Type extends BcsType<U, U, string> ? U : never : never>, EnumInputShape<{ [K in string | number | symbol]: T[K] extends BcsType<any, U, any> ? U : boolean | object | null }>>

Inherited from

BcsType.serialize


parse()

parse(bytes): EnumOutputShape

Parameters

bytes

Uint8Array

Returns

EnumOutputShape

Inherited from

BcsType.parse


fromHex()

fromHex(hex): EnumOutputShape<{ [K in string | number | symbol]: T[K] extends BcsType<U, any, string> ? U : true }, Extract<keyof T, string>, { [K in string | number | symbol]: T[K] extends BcsType<U, any, string> ? U : true }[keyof T] extends Type ? Type extends BcsType<U, U, string> ? U : never : never>

Parameters

hex

string

Returns

EnumOutputShape<{ [K in string | number | symbol]: T[K] extends BcsType<U, any, string> ? U : true }, Extract<keyof T, string>, { [K in string | number | symbol]: T[K] extends BcsType<U, any, string> ? U : true }[keyof T] extends Type ? Type extends BcsType<U, U, string> ? U : never : never>

Inherited from

BcsType.fromHex


fromBase58()

fromBase58(b64): EnumOutputShape<{ [K in string | number | symbol]: T[K] extends BcsType<U, any, string> ? U : true }, Extract<keyof T, string>, { [K in string | number | symbol]: T[K] extends BcsType<U, any, string> ? U : true }[keyof T] extends Type ? Type extends BcsType<U, U, string> ? U : never : never>

Parameters

b64

string

Returns

EnumOutputShape<{ [K in string | number | symbol]: T[K] extends BcsType<U, any, string> ? U : true }, Extract<keyof T, string>, { [K in string | number | symbol]: T[K] extends BcsType<U, any, string> ? U : true }[keyof T] extends Type ? Type extends BcsType<U, U, string> ? U : never : never>

Inherited from

BcsType.fromBase58


fromBase64()

fromBase64(b64): EnumOutputShape<{ [K in string | number | symbol]: T[K] extends BcsType<U, any, string> ? U : true }, Extract<keyof T, string>, { [K in string | number | symbol]: T[K] extends BcsType<U, any, string> ? U : true }[keyof T] extends Type ? Type extends BcsType<U, U, string> ? U : never : never>

Parameters

b64

string

Returns

EnumOutputShape<{ [K in string | number | symbol]: T[K] extends BcsType<U, any, string> ? U : true }, Extract<keyof T, string>, { [K in string | number | symbol]: T[K] extends BcsType<U, any, string> ? U : true }[keyof T] extends Type ? Type extends BcsType<U, U, string> ? U : never : never>

Inherited from

BcsType.fromBase64


transform()

transform<T2, Input2, NewName>(__namedParameters): BcsType<T2, Input2, NewName>

Type Parameters

T2

T2 = EnumOutputShape<{ [K in string | number | symbol]: T[K] extends BcsType<U, any, string> ? U : true }, Extract<keyof T, string>, { [K in string | number | symbol]: T[K] extends BcsType<U, any, string> ? U : true }[keyof T] extends Type ? Type extends BcsType<U, U, string> ? U : never : never>

Input2

Input2 = EnumInputShape<{ [K in string | number | symbol]: T[K] extends BcsType<any, U, any> ? U : boolean | object | null }>

NewName

NewName extends string = Name

Parameters

__namedParameters

object & BcsTypeOptions<T2, Input2, NewName>

Returns

BcsType<T2, Input2, NewName>

Inherited from

BcsType.transform