import { z } from 'zod';

export declare const corePropsZ: z.ZodObject<{
    color: z.ZodOptional<z.ZodDefault<z.ZodOptional<z.ZodEffects<z.ZodUnion<[z.ZodString, z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>, z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>, z.ZodType<import('../../color/external').Color, z.ZodTypeDef, import('../../color/external').Color>, z.ZodObject<{
        rgba255: z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>;
    }, "strip", z.ZodTypeAny, {
        rgba255: [number, number, number, number];
    }, {
        rgba255: [number, number, number, number];
    }>]>, import('../../color/external').Color, string | [number, number, number, number] | {
        rgba255: [number, number, number, number];
    } | import('../../color/external').Color | [number, number, number]>>>>;
    minWidth: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
    width: z.ZodOptional<z.ZodNumber>;
    precision: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
    telem: z.ZodDefault<z.ZodOptional<z.ZodObject<{
        type: z.ZodString;
        props: z.ZodAny;
        variant: z.ZodLiteral<"source">;
        transfer: z.ZodOptional<z.ZodArray<z.ZodType<ArrayBuffer, z.ZodTypeDef, ArrayBuffer>, "many">>;
        valueType: z.ZodLiteral<"string">;
    }, "strip", z.ZodTypeAny, {
        type: string;
        valueType: "string";
        variant: "source";
        props?: any;
        transfer?: ArrayBuffer[] | undefined;
    }, {
        type: string;
        valueType: "string";
        variant: "source";
        props?: any;
        transfer?: ArrayBuffer[] | undefined;
    }>>>;
    box: z.ZodObject<{
        one: z.ZodObject<{
            x: z.ZodNumber;
            y: z.ZodNumber;
        }, "strip", z.ZodTypeAny, {
            x: number;
            y: number;
        }, {
            x: number;
            y: number;
        }>;
        two: z.ZodObject<{
            x: z.ZodNumber;
            y: z.ZodNumber;
        }, "strip", z.ZodTypeAny, {
            x: number;
            y: number;
        }, {
            x: number;
            y: number;
        }>;
        root: z.ZodObject<{
            x: z.ZodEnum<["left", "right"]>;
            y: z.ZodEnum<["top", "bottom"]>;
        }, "strip", z.ZodTypeAny, {
            x: "left" | "right";
            y: "bottom" | "top";
        }, {
            x: "left" | "right";
            y: "bottom" | "top";
        }>;
    }, "strip", z.ZodTypeAny, {
        one: {
            x: number;
            y: number;
        };
        two: {
            x: number;
            y: number;
        };
        root: {
            x: "left" | "right";
            y: "bottom" | "top";
        };
    }, {
        one: {
            x: number;
            y: number;
        };
        two: {
            x: number;
            y: number;
        };
        root: {
            x: "left" | "right";
            y: "bottom" | "top";
        };
    }>;
    level: z.ZodOptional<z.ZodEnum<["h1", "h2", "h3", "h4", "h5", "p", "small"]>>;
}, "strip", z.ZodTypeAny, {
    minWidth: number;
    precision: number;
    telem: {
        type: string;
        valueType: "string";
        variant: "source";
        props?: any;
        transfer?: ArrayBuffer[] | undefined;
    };
    box: {
        one: {
            x: number;
            y: number;
        };
        two: {
            x: number;
            y: number;
        };
        root: {
            x: "left" | "right";
            y: "bottom" | "top";
        };
    };
    color?: import('../../color/external').Color | undefined;
    width?: number | undefined;
    level?: "small" | "h1" | "h2" | "h3" | "h4" | "h5" | "p" | undefined;
}, {
    box: {
        one: {
            x: number;
            y: number;
        };
        two: {
            x: number;
            y: number;
        };
        root: {
            x: "left" | "right";
            y: "bottom" | "top";
        };
    };
    color?: string | [number, number, number, number] | {
        rgba255: [number, number, number, number];
    } | import('../../color/external').Color | [number, number, number] | undefined;
    minWidth?: number | undefined;
    width?: number | undefined;
    precision?: number | undefined;
    telem?: {
        type: string;
        valueType: "string";
        variant: "source";
        props?: any;
        transfer?: ArrayBuffer[] | undefined;
    } | undefined;
    level?: "small" | "h1" | "h2" | "h3" | "h4" | "h5" | "p" | undefined;
}>;
export interface UseProps extends z.input<typeof corePropsZ> {
    aetherKey: string;
}
export interface UseReturn {
    width: number;
}
export declare const use: ({ aetherKey, box, telem, color, precision, minWidth, level, }: UseProps) => UseReturn;
//# sourceMappingURL=use.d.ts.map