/**
 * Shared Base Schemas for Interactive Elements
 *
 * These Zod schemas are shared by buttons and nav links for DRY architecture.
 */
import { z } from 'zod';
/**
 * Typography settings shared by buttons and nav links
 */
export declare const interactiveTypographySchema: z.ZodObject<{
    typography: z.ZodDefault<z.ZodEnum<{
        body: "body";
        heading: "heading";
    }>>;
    fontWeight: z.ZodDefault<z.ZodEnum<{
        medium: "medium";
        bold: "bold";
        regular: "regular";
        semibold: "semibold";
    }>>;
    textTransform: z.ZodDefault<z.ZodEnum<{
        none: "none";
        uppercase: "uppercase";
        capitalize: "capitalize";
    }>>;
    italic: z.ZodDefault<z.ZodBoolean>;
}, z.core.$strip>;
/**
 * Effect application reference (shared between buttons and nav)
 */
export declare const effectApplicationSchema: z.ZodObject<{
    effectId: z.ZodString;
    options: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
}, z.core.$strip>;
/**
 * Effect composition by state (shared pattern)
 */
export declare const effectCompositionSchema: z.ZodObject<{
    base: z.ZodOptional<z.ZodArray<z.ZodObject<{
        effectId: z.ZodString;
        options: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
    }, z.core.$strip>>>;
    hover: z.ZodOptional<z.ZodArray<z.ZodObject<{
        effectId: z.ZodString;
        options: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
    }, z.core.$strip>>>;
    active: z.ZodOptional<z.ZodArray<z.ZodObject<{
        effectId: z.ZodString;
        options: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
    }, z.core.$strip>>>;
    focus: z.ZodOptional<z.ZodArray<z.ZodObject<{
        effectId: z.ZodString;
        options: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
    }, z.core.$strip>>>;
}, z.core.$strip>;
export type InteractiveTypographySchema = z.infer<typeof interactiveTypographySchema>;
export type EffectApplicationSchema = z.infer<typeof effectApplicationSchema>;
export type EffectCompositionSchema = z.infer<typeof effectCompositionSchema>;
