Documentation
    Preparing search index...

    Class BcsStruct<T, Name>

    Type Parameters

    • T extends Record<string, BcsType<any>>
    • const Name extends string = string

    Hierarchy (View Summary)

    • BcsType<
          { [K in keyof T]: T[K] extends BcsType<infer U, any> ? U : never },
          { [K in keyof T]: T[K] extends BcsType<any, infer U> ? U : never },
          Name,
      >
      • BcsStruct
    Index

    Constructors

    • Type Parameters

      • T extends Record<string, BcsType<any, any, string>>
      • const Name extends string = string

      Parameters

      • __namedParameters: BcsStructOptions<T, Name>

      Returns BcsStruct<T, Name>

    Properties

    $inferInput: {
        [K in string | number | symbol]: T[K] extends BcsType<any, U, string>
            ? U
            : never
    }
    $inferType: {
        [K in string | number | symbol]: T[K] extends BcsType<U, any, string>
            ? U
            : never
    }
    name: Name
    read: (
        reader: BcsReader,
    ) => {
        [K in string | number | symbol]: T[K] extends BcsType<U, any, string>
            ? U
            : never
    }
    serializedSize: (
        value: {
            [K in string | number | symbol]: T[K] extends BcsType<any, U, string>
                ? U
                : never
        },
        options?: BcsWriterOptions,
    ) => null | number
    validate: (
        value: {
            [K in string | number | symbol]: T[K] extends BcsType<any, U, string>
                ? U
                : never
        },
    ) => void

    Methods

    • Parameters

      • b64: string

      Returns {
          [K in string | number | symbol]: T[K] extends BcsType<U, any, string>
              ? U
              : never
      }

    • Parameters

      • b64: string

      Returns {
          [K in string | number | symbol]: T[K] extends BcsType<U, any, string>
              ? U
              : never
      }

    • Parameters

      • hex: string

      Returns {
          [K in string | number | symbol]: T[K] extends BcsType<U, any, string>
              ? U
              : never
      }

    • Parameters

      • bytes: Uint8Array

      Returns {
          [K in string | number | symbol]: T[K] extends BcsType<U, any, string>
              ? U
              : never
      }

    • Parameters

      • value: {
            [K in string | number | symbol]: T[K] extends BcsType<any, U, string>
                ? U
                : never
        }
      • Optionaloptions: BcsWriterOptions

      Returns SerializedBcs<
          {
              [K in string
              | number
              | symbol]: T[K] extends BcsType<U, any, string> ? U : never
          },
          {
              [K in string
              | number
              | symbol]: T[K] extends BcsType<any, U, string> ? U : never
          },
      >

    • Type Parameters

      • T2 = {
            [K in string | number | symbol]: T[K] extends BcsType<U, any, string>
                ? U
                : never
        }
      • Input2 = {
            [K in string | number | symbol]: T[K] extends BcsType<any, U, string>
                ? U
                : never
        }
      • NewName extends string = Name

      Parameters

      • __namedParameters: {
            input?: (
                val: Input2,
            ) => {
                [K in string | number | symbol]: T[K] extends BcsType<any, U, string>
                    ? U
                    : never
            };
            output?: (
                value: {
                    [K in string | number | symbol]: T[K] extends BcsType<U, any, string>
                        ? U
                        : never
                },
            ) => T2;
        } & BcsTypeOptions<T2, Input2, NewName>

      Returns BcsType<T2, Input2, NewName>

    • Parameters

      • value: {
            [K in string | number | symbol]: T[K] extends BcsType<any, U, string>
                ? U
                : never
        }
      • writer: BcsWriter

      Returns void