@blockchaincommons/rand - v1.0.0-beta.3
    Preparing search index...

    Type Alias RandErrorDetails

    RandErrorDetails:
        | {
            code: "InvalidArgument";
            parameter: RandParameter;
            value: unknown;
            bounds?: RandBounds;
        }
        | {
            code: "EmptyRange";
            start: number
            | bigint;
            end: number | bigint;
            closed: boolean;
        }
        | {
            code: "RangeTooLong";
            length: number
            | bigint;
            max: number | bigint;
            closed: boolean;
        }
        | { code: "ValueDoesNotFit" }
        | { code: "InvalidSeed"; parameter: RandSeedParameter; value: unknown }
        | { code: "InvalidGenerator"; method: RandGeneratorMethod; value: unknown }
        | { code: "CryptoUnavailable" }

    The structured payload of a RandError, discriminated by code. e.details.code === "InvalidGenerator" narrows to { method, value }, and so on.

    Type Declaration

    • {
          code: "InvalidArgument";
          parameter: RandParameter;
          value: unknown;
          bounds?: RandBounds;
      }
      • Readonlycode: "InvalidArgument"

        The discriminant.

      • Readonlyparameter: RandParameter

        The argument.

      • Readonlyvalue: unknown

        The value received.

      • Optional Readonlybounds?: RandBounds

        The accepted integer domain; absent when the argument must be a Uint8Array.

    • {
          code: "EmptyRange";
          start: number | bigint;
          end: number | bigint;
          closed: boolean;
      }
      • Readonlycode: "EmptyRange"

        The discriminant.

      • Readonlystart: number | bigint

        The range start.

      • Readonlyend: number | bigint

        The range end.

      • Readonlyclosed: boolean

        true for [start, end], false for [start, end).

    • {
          code: "RangeTooLong";
          length: number | bigint;
          max: number | bigint;
          closed: boolean;
      }
      • Readonlycode: "RangeTooLong"

        The discriminant.

      • Readonlylength: number | bigint

        end - start.

      • Readonlymax: number | bigint

        The width's MAX.

      • Readonlyclosed: boolean

        true for [start, end], false for [start, end).

    • { code: "ValueDoesNotFit" }
      • Readonlycode: "ValueDoesNotFit"

        The discriminant.

    • { code: "InvalidSeed"; parameter: RandSeedParameter; value: unknown }
      • Readonlycode: "InvalidSeed"

        The discriminant.

      • Readonlyparameter: RandSeedParameter

        The seed, a word of it, or a byte length.

      • Readonlyvalue: unknown

        The value received.

    • { code: "InvalidGenerator"; method: RandGeneratorMethod; value: unknown }
      • Readonlycode: "InvalidGenerator"

        The discriminant.

      • Readonlymethod: RandGeneratorMethod

        The generator member that was called.

      • Readonlyvalue: unknown

        The bad draw, the non-callable member, or the undefined/null generator.

    • { code: "CryptoUnavailable" }
      • Readonlycode: "CryptoUnavailable"

        The discriminant.