import React from "react"; import { type DateRange } from "../input/GlassDateRangePicker"; export interface FilterOption { id: string; label: string; value: string; count?: number; disabled?: boolean; } export interface FilterGroup { id: string; label: string; type: "checkbox" | "select" | "slider" | "daterange" | "search"; options?: FilterOption[]; min?: number; max?: number; step?: number; placeholder?: string; collapsed?: boolean; required?: boolean; } export type FilterScalarValue = string | number | boolean; export type FilterValue = FilterScalarValue | FilterScalarValue[] | DateRange | null; export type FilterValues = Record; export interface FilterPreset { id: string; name: string; filters: FilterValues; } export interface GlassFilterPanelProps { filters?: FilterGroup[]; values?: FilterValues; onChange?: (filters: FilterValues) => void; onApply?: () => void; onClear?: () => void; presets?: FilterPreset[]; onSavePreset?: (name: string) => void; className?: string; title?: string; collapsible?: boolean; showSearch?: boolean; showPresets?: boolean; showApplyButton?: boolean; showClearButton?: boolean; variant?: "default" | "compact" | "minimal"; size?: "sm" | "md" | "lg"; elevation?: "low" | "medium" | "high"; /** * Bound the panel inside its parent container. */ contained?: boolean; /** * Maximum height for compact/contained panels. */ maxHeight?: number | string; /** * Custom data-testid for testing */ "data-testid"?: string; style?: React.CSSProperties; } declare const GlassFilterPanel: React.ForwardRefExoticComponent>; export { GlassFilterPanel }; //# sourceMappingURL=GlassFilterPanel.d.ts.map