/**
 * Standard element sizes used across interactive components.
 */
export type ElementSize = 'sm' | 'md' | 'lg';
/**
 * Context for cascading a default size from container to children.
 *
 * `null` means no container is providing a size — components use their own default.
 */
export declare const SizeContext: import("react").Context<ElementSize | null>;
/**
 * Resolve the effective size from an explicit prop, inherited context, or default.
 *
 * @param sizeProp - Explicit size prop from the component (wins if set)
 * @param defaultSize - Fallback when neither prop nor context provides a size
 * @returns The resolved size
 *
 * @example
 * ```ts
 * // In a component:
 * const size = useSize(sizeProp, 'md');
 * ```
 */
export declare function useSize<T extends string = ElementSize>(sizeProp?: T, defaultSize?: T): T;
export declare const SizeProvider: import("react").Provider<ElementSize | null>;
//# sourceMappingURL=SizeContext.d.ts.map