import { type FilterGroup, type FilterGroupInput, type SingleFilter, type SingleFilterInput } from "@fn-sphere/core"; export declare const useFilterRule: (rule: SingleFilter) => { ruleState: { index: number; isFirstRule: boolean; /** * If the rule is the last rule in the group */ isLastRule: boolean; readonly isValid: boolean; isInvert: boolean | undefined; readonly depth: number; readonly parentGroup: FilterGroup; }; selectedField: import("@fn-sphere/core").FilterField | undefined; selectedFilter: import("@fn-sphere/core").StandardFnSchema | undefined; setRule: (input: SingleFilterInput) => void; /** * @deprecated Use {@link setRule} instead */ updateRule: (input: SingleFilterInput) => void; appendRule: (input?: SingleFilterInput) => SingleFilter; appendGroup: (input?: FilterGroupInput) => { op: "and" | "or"; conditions: import("@fn-sphere/core").FilterRule[]; invert?: boolean; meta?: Record; id: import("@fn-sphere/core").FilterId; type: "FilterGroup"; }; removeRule: (removeEmptyGroup?: boolean) => void; moveRule: (target: FilterGroup, index: number) => void; duplicateRule: () => SingleFilter; invertRule: (invert?: SingleFilter["invert"]) => void; }; //# sourceMappingURL=use-filter-rule.d.ts.map