import type { FactoryPayload } from '../../node_modules/.pnpm/@mantine_core@7.17.8_patch_hash_3qirwkgu3wxhvd6hnr2gb24yzq_@mantine_hooks@7.17.8_react@18.3.1_e5yvlgwhmeykc75dkphi7jou6q/node_modules/@mantine/core/lib' import type { EmotionSx } from '@mantine/emotion' import type { EmotionStyles } from '../emotion/index.cjs' import type { ShadingColor } from '../theme/colors.cjs' import type { Color } from '../theme/theme.cjs' declare module '../../node_modules/.pnpm/@mantine_core@7.17.8_patch_hash_3qirwkgu3wxhvd6hnr2gb24yzq_@mantine_hooks@7.17.8_react@18.3.1_e5yvlgwhmeykc75dkphi7jou6q/node_modules/@mantine/core/lib' { interface MantineThemeColorsOverride { colors: Record } interface StylesApiPropsOverride { styles?: EmotionStyles } interface BoxProps { sx?: EmotionSx } } declare module '@mantine/core' { interface MantineThemeColorsOverride { colors: Record } interface StylesApiPropsOverride { styles?: EmotionStyles } interface BoxProps { sx?: EmotionSx } } import { FieldValues } from 'react-hook-form'; import { BoxProps } from '../../primitive/index.cjs'; import { FormProps } from '../Form/index.cjs'; import { TimeRange } from '../TimeRangePicker/helpers.cjs'; export type TSearchAreaValue = string | string[] | Date | TimeRange | undefined; interface IFormItemBase { name: string; placeholder?: string; sx?: BoxProps['sx']; } interface IFormItemText extends IFormItemBase { type: 'text'; } interface IFormItemDatePicker extends IFormItemBase { type: 'datepicker'; } interface IFormItemSelect extends IFormItemBase { type: 'select'; data: Array<{ label: string; value: string; }>; } interface IFormItemMultiSelect extends IFormItemBase { type: 'multiselect'; data: Array<{ label: string; value: string; }>; } interface IFormItemTimeRangePicker extends IFormItemBase { type: 'timerangepicker'; } export type FormItem = IFormItemText | IFormItemSelect | IFormItemDatePicker | IFormItemTimeRangePicker | IFormItemMultiSelect; export interface SearchAreaProps extends FormProps { data: FormItem[]; recoverFromURLEnabled?: boolean; debugEnabled?: boolean; /** * The key saving the form state in URL query * it would be `__fs__` by default, you can change it by setting this prop * CAUTIONS: must be set to different keys when using multiple SearchArea in the same page!!! */ formStateQueryKey?: string; clearFiltersText?: string; } /** * Please use `formStateQueryKey` instead if you have multiple components in the same page */ export declare const DEFAULT_FORM_STATE_KEY = "__fs"; export declare function SearchArea(props: SearchAreaProps): import("react/jsx-runtime.js").JSX.Element; export {};