declare enum RendererTier { NATIVE = "native", HOUDINI = "houdini", CLIPPATH = "clippath", FALLBACK = "fallback" } interface BrowserSupport { native: boolean; houdini: boolean; clippath: boolean; fallback: boolean; } interface GradientStop { offset: string | number; color: string; } interface BorderConfig { width: number; color?: string; style?: 'solid' | 'dashed' | 'dotted'; dashArray?: string; gradient?: GradientStop[]; } interface BorderRenderOptions { width: number; height: number; radius: number; smoothing: number; border: BorderConfig; backgroundColor?: string; } interface SquircleConfig { radius: number; smoothing: number; border?: BorderConfig; borderWidth?: number; borderColor?: string; tier?: RendererTier; } declare const DEFAULT_CONFIG: Readonly>>; interface OriginalStyles { transition?: string; } interface ManagedElementInfo { config: SquircleConfig; tier: RendererTier; dimensions: { width: number; height: number; }; } interface ManagedElement { element: HTMLElement; config: SquircleConfig; tier: RendererTier; resizeObserver?: ResizeObserver; intersectionObserver?: IntersectionObserver; lastDimensions?: { width: number; height: number; }; originalStyles?: OriginalStyles; } declare const VALID_BORDER_STYLES: readonly ["solid", "dashed", "dotted"]; type BorderStyleValue = typeof VALID_BORDER_STYLES[number]; declare function hasSquircleAttribute(element: HTMLElement): boolean; declare function parseRadius(element: HTMLElement): number | undefined; declare function parseSmoothing(element: HTMLElement): number | undefined; declare function parseBorderWidth(element: HTMLElement): number | undefined; declare function parseBorderColor(element: HTMLElement): string | undefined; declare function parseBorderStyle(element: HTMLElement): BorderStyleValue | undefined; declare function parseDataAttributes(element: HTMLElement): Partial; declare class CornerKit { private globalConfig; private detector; private registry; private clipPathRenderer?; private fallbackRenderer?; private autoObserver?; private reducedMotionEnabled; private reducedMotionWatcher?; constructor(config?: Partial); apply(elementOrSelector: HTMLElement | string, config?: Partial): void; applyAll(selector: string, config?: Partial): void; auto(): void; update(elementOrSelector: HTMLElement | string, config: Partial): void; remove(elementOrSelector: HTMLElement | string): void; destroy(): void; inspect(elementOrSelector: HTMLElement | string): ManagedElementInfo | null; private removeElementStyling; private updateElementStyling; private updateAllReducedMotion; private resolveElement; static supports(): { native: boolean; houdini: boolean; clippath: boolean; fallback: boolean; }; } export { DEFAULT_CONFIG, RendererTier, CornerKit as default, hasSquircleAttribute, parseBorderColor, parseBorderStyle, parseBorderWidth, parseDataAttributes, parseRadius, parseSmoothing }; export type { BorderConfig, BorderRenderOptions, BrowserSupport, GradientStop, ManagedElement, ManagedElementInfo, SquircleConfig };