bupkis
    Preparing search index...

    Interface ZodDiscriminatedUnion<Options, Disc>

    interface ZodDiscriminatedUnion<
        Options extends readonly SomeType[] = readonly z.core.$ZodType[],
        Disc extends string = string,
    > {
        _zod: $ZodDiscriminatedUnionInternals<Options, Disc>;
        def: $ZodDiscriminatedUnionDef<Options, Disc>;
        options: Options;
        type: "union";
        _def: $ZodUnionDef<Options>;
        _output: $InferUnionOutput<Options[number]>;
        _input: $InferUnionInput<Options[number]>;
        spa: (
            data: unknown,
            params?: ParseContext<$ZodIssue>,
        ) => Promise<ZodSafeParseResult<$InferUnionOutput<Options[number]>>>;
        description?: string;
        "~standard": $ZodStandardSchema<z.ZodDiscriminatedUnion<Options, Disc>>;
        check(
            ...checks: (
                | CheckFn<$InferUnionOutput<Options[number]>>
                | z.core.$ZodCheck<$InferUnionOutput<Options[number]>>
            )[],
        ): this;
        clone(def?: $ZodUnionDef<Options>, params?: { parent: boolean }): this;
        register<
            R extends
                $ZodRegistry<
                    MetadataType,
                    z.core.$ZodType<unknown, unknown, $ZodTypeInternals<unknown, unknown>>,
                >,
        >(
            registry: R,
            ...meta: z.ZodDiscriminatedUnion<Options, Disc> extends R["_schema"]
                ? undefined extends R["_meta"]
                    ? [
                        $replace<
                            R["_meta"],
                            R["_schema"] & z.ZodDiscriminatedUnion<Options, Disc>,
                        >?,
                    ]
                    : [
                        $replace<
                            R["_meta"],
                            R["_schema"] & z.ZodDiscriminatedUnion<Options, Disc>,
                        >,
                    ]
                : ["Incompatible schema"],
        ): this;
        brand<T extends PropertyKey = PropertyKey>(
            value?: T,
        ): PropertyKey extends T
            ? z.ZodDiscriminatedUnion<Options, Disc>
            : $ZodBranded<z.ZodDiscriminatedUnion<Options, Disc>, T>;
        parse(
            data: unknown,
            params?: ParseContext<$ZodIssue>,
        ): $InferUnionOutput<Options[number]>;
        safeParse(
            data: unknown,
            params?: ParseContext<$ZodIssue>,
        ): ZodSafeParseResult<$InferUnionOutput<Options[number]>>;
        parseAsync(
            data: unknown,
            params?: ParseContext<$ZodIssue>,
        ): Promise<$InferUnionOutput<Options[number]>>;
        safeParseAsync(
            data: unknown,
            params?: ParseContext<$ZodIssue>,
        ): Promise<ZodSafeParseResult<$InferUnionOutput<Options[number]>>>;
        encode(
            data: $InferUnionOutput<Options[number]>,
            params?: ParseContext<$ZodIssue>,
        ): $InferUnionInput<Options[number]>;
        decode(
            data: $InferUnionInput<Options[number]>,
            params?: ParseContext<$ZodIssue>,
        ): $InferUnionOutput<Options[number]>;
        encodeAsync(
            data: $InferUnionOutput<Options[number]>,
            params?: ParseContext<$ZodIssue>,
        ): Promise<$InferUnionInput<Options[number]>>;
        decodeAsync(
            data: $InferUnionInput<Options[number]>,
            params?: ParseContext<$ZodIssue>,
        ): Promise<$InferUnionOutput<Options[number]>>;
        safeEncode(
            data: $InferUnionOutput<Options[number]>,
            params?: ParseContext<$ZodIssue>,
        ): ZodSafeParseResult<$InferUnionInput<Options[number]>>;
        safeDecode(
            data: $InferUnionInput<Options[number]>,
            params?: ParseContext<$ZodIssue>,
        ): ZodSafeParseResult<$InferUnionOutput<Options[number]>>;
        safeEncodeAsync(
            data: $InferUnionOutput<Options[number]>,
            params?: ParseContext<$ZodIssue>,
        ): Promise<ZodSafeParseResult<$InferUnionInput<Options[number]>>>;
        safeDecodeAsync(
            data: $InferUnionInput<Options[number]>,
            params?: ParseContext<$ZodIssue>,
        ): Promise<ZodSafeParseResult<$InferUnionOutput<Options[number]>>>;
        refine(
            check: (arg: $InferUnionOutput<Options[number]>) => unknown,
            params?:
                | string
                | {
                    abort?: boolean;
                    when?: (payload: ParsePayload) => boolean;
                    path?: PropertyKey[];
                    params?: Record<string, any>;
                    error?: string | $ZodErrorMap<NonNullable<$ZodIssue>>;
                    message?: string;
                },
        ): this;
        superRefine(
            refinement: (
                arg: $InferUnionOutput<Options[number]>,
                ctx: $RefinementCtx<$InferUnionOutput<Options[number]>>,
            ) => void | Promise<void>,
        ): this;
        overwrite(
            fn: (
                x: $InferUnionOutput<Options[number]>,
            ) => $InferUnionOutput<Options[number]>,
        ): this;
        optional(): z.ZodOptional<z.ZodDiscriminatedUnion<Options, Disc>>;
        nonoptional(
            params?:
                | string
                | {
                    error?: string
                    | $ZodErrorMap<$ZodIssueInvalidType<unknown>>;
                    message?: string;
                },
        ): z.ZodNonOptional<z.ZodDiscriminatedUnion<Options, Disc>>;
        nullable(): z.ZodNullable<z.ZodDiscriminatedUnion<Options, Disc>>;
        nullish(): z.ZodOptional<
            z.ZodNullable<z.ZodDiscriminatedUnion<Options, Disc>>,
        >;
        default(
            def: $InferUnionOutput<Options[number]>,
        ): z.ZodDefault<z.ZodDiscriminatedUnion<Options, Disc>>;
        default(
            def: () => NoUndefined<$InferUnionOutput<Options[number]>>,
        ): z.ZodDefault<z.ZodDiscriminatedUnion<Options, Disc>>;
        prefault(
            def: () => $InferUnionInput<Options[number]>,
        ): z.ZodPrefault<z.ZodDiscriminatedUnion<Options, Disc>>;
        prefault(
            def: $InferUnionInput<Options[number]>,
        ): z.ZodPrefault<z.ZodDiscriminatedUnion<Options, Disc>>;
        array(): z.ZodArray<z.ZodDiscriminatedUnion<Options, Disc>>;
        or<T extends SomeType>(
            option: T,
        ): z.ZodUnion<[z.ZodDiscriminatedUnion<Options, Disc>, T]>;
        and<T extends SomeType>(
            incoming: T,
        ): z.ZodIntersection<z.ZodDiscriminatedUnion<Options, Disc>, T>;
        transform<NewOut>(
            transform: (
                arg: $InferUnionOutput<Options[number]>,
                ctx: $RefinementCtx<$InferUnionOutput<Options[number]>>,
            ) => NewOut | Promise<NewOut>,
        ): z.ZodPipe<
            z.ZodDiscriminatedUnion<Options, Disc>,
            z.ZodTransform<Awaited<NewOut>, $InferUnionOutput<Options[number]>>,
        >;
        catch(
            def: $InferUnionOutput<Options[number]>,
        ): z.ZodCatch<z.ZodDiscriminatedUnion<Options, Disc>>;
        catch(
            def: (ctx: $ZodCatchCtx) => $InferUnionOutput<Options[number]>,
        ): z.ZodCatch<z.ZodDiscriminatedUnion<Options, Disc>>;
        pipe<
            T extends
                z.core.$ZodType<
                    any,
                    $InferUnionOutput<Options[number]>,
                    $ZodTypeInternals<any, $InferUnionOutput<Options[number]>>,
                >,
        >(
            target:
                | T
                | z.core.$ZodType<
                    any,
                    $InferUnionOutput<Options[number]>,
                    $ZodTypeInternals<any, $InferUnionOutput<Options[number]>>,
                >,
        ): z.ZodPipe<z.ZodDiscriminatedUnion<Options, Disc>, T>;
        readonly(): z.ZodReadonly<z.ZodDiscriminatedUnion<Options, Disc>>;
        describe(description: string): this;
        meta(): | undefined
        | {
            id?: string;
            title?: string;
            description?: string;
            deprecated?: boolean;
            [key: string]: unknown;
        };
        meta(
            data: {
                id?: string;
                title?: string;
                description?: string;
                deprecated?: boolean;
                [key: string]: unknown;
            },
        ): this;
        isOptional(): boolean;
        isNullable(): boolean;
    }

    Type Parameters

    Hierarchy (View Summary)

    Index

    Properties

    options: Options
    type: "union"

    Use .def instead.

    _output: $InferUnionOutput<Options[number]>

    Use z.output<typeof schema> instead.

    _input: $InferUnionInput<Options[number]>

    Use z.input<typeof schema> instead.

    spa: (
        data: unknown,
        params?: ParseContext<$ZodIssue>,
    ) => Promise<ZodSafeParseResult<$InferUnionOutput<Options[number]>>>
    description?: string

    Methods

    • Parameters

      • check: (arg: $InferUnionOutput<Options[number]>) => unknown
      • Optionalparams:
            | string
            | {
                abort?: boolean;
                when?: (payload: ParsePayload) => boolean;
                path?: PropertyKey[];
                params?: Record<string, any>;
                error?: string | $ZodErrorMap<NonNullable<$ZodIssue>>;
                message?: string;
            }
        • string
        • {
              abort?: boolean;
              when?: (payload: ParsePayload) => boolean;
              path?: PropertyKey[];
              params?: Record<string, any>;
              error?: string | $ZodErrorMap<NonNullable<$ZodIssue>>;
              message?: string;
          }
          • Optionalabort?: boolean

            If true, no later checks will be executed if this check fails. Default false.

          • Optionalwhen?: (payload: ParsePayload) => boolean

            If provided, this check will only be executed if the function returns true. Defaults to payload => z.util.isAborted(payload).

          • Optionalpath?: PropertyKey[]
          • Optionalparams?: Record<string, any>
          • Optionalerror?: string | $ZodErrorMap<NonNullable<$ZodIssue>>
          • Optionalmessage?: string

            This parameter is deprecated. Use error instead.

      Returns this

    • Returns a new instance that has been registered in z.globalRegistry with the specified description

      Parameters

      • description: string

      Returns this

    • Returns the metadata associated with this instance in z.globalRegistry

      Returns
          | undefined
          | {
              id?: string;
              title?: string;
              description?: string;
              deprecated?: boolean;
              [key: string]: unknown;
          }

    • Returns a new instance that has been registered in z.globalRegistry with the specified metadata

      Parameters

      • data: {
            id?: string;
            title?: string;
            description?: string;
            deprecated?: boolean;
            [key: string]: unknown;
        }

      Returns this

    • Returns boolean

      Try safe-parsing undefined (this is what isOptional does internally):

      const schema = z.string().optional();
      const isOptional = schema.safeParse(undefined).success; // true
    • Returns boolean

      Try safe-parsing null (this is what isNullable does internally):

      const schema = z.string().nullable();
      const isNullable = schema.safeParse(null).success; // true