import { Optional, TimeStamp } from '@synnaxlabs/x';
import { z } from 'zod';
export declare const VARIANTS: readonly ["success", "error", "warning", "info", "loading", "disabled", "secondary"];
export declare const variantZ: z.ZodEnum<["success", "error", "warning", "info", "loading", "disabled", "secondary"]>;
export type Variant = z.infer<typeof variantZ>;
export declare const specZ: z.ZodObject<{
    key: z.ZodString;
    variant: z.ZodEnum<["success", "error", "warning", "info", "loading", "disabled", "secondary"]>;
    message: z.ZodString;
    description: z.ZodOptional<z.ZodString>;
    time: z.ZodUnion<[z.ZodEffects<z.ZodObject<{
        value: z.ZodBigInt;
    }, "strip", z.ZodTypeAny, {
        value: bigint;
    }, {
        value: bigint;
    }>, TimeStamp, {
        value: bigint;
    }>, z.ZodEffects<z.ZodString, TimeStamp, string>, z.ZodEffects<z.ZodType<Number, z.ZodTypeDef, Number>, TimeStamp, Number>, z.ZodEffects<z.ZodNumber, TimeStamp, number>, z.ZodType<TimeStamp, z.ZodTypeDef, TimeStamp>]>;
    data: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
}, "strip", z.ZodTypeAny, {
    message: string;
    key: string;
    time: TimeStamp;
    variant: "disabled" | "loading" | "error" | "secondary" | "warning" | "success" | "info";
    data?: Record<string, unknown> | undefined;
    description?: string | undefined;
}, {
    message: string;
    key: string;
    time: string | number | Number | TimeStamp | {
        value: bigint;
    };
    variant: "disabled" | "loading" | "error" | "secondary" | "warning" | "success" | "info";
    data?: Record<string, unknown> | undefined;
    description?: string | undefined;
}>;
export type Spec = z.infer<typeof specZ>;
export type CrudeSpec = Optional<Spec, "time" | "key">;
//# sourceMappingURL=types.d.ts.map