import { IndexListControlAreaViewsProps, IndexListControlAreaWordSearchProps, ListControlAreaFiltersType, ListControlAreaProps, ListControlAreaSearchFilterType, ViewItemType } from '../../../areas/EXPERIMENTAL_ListControl'; import type { ApiPayloadOptions } from '../../../pages/fetcher'; import type { ApiSearchParams } from '../../../templates/IndexPage/types'; export type UseSearchReturn

= { /** * 現在選択中のviewのIDを取得 */ currentViewId: ViewItemType['id'] | undefined | null; /** * パラメーターの全体 */ searchQuery: P; /** * viewを更新する関数 */ setCurrentView: (view?: ViewItemType) => void; /** * 現在選択中のviewの設定値に戻す関数 */ resetCurrentViewParams: () => void; /** * 特定のパラメーター(フィルタ・表示切り替え)を更新する関数 */ setFilterSearchParams: (q: Partial

) => void; /** * 特定のパラメーター(フィルタ・表示切り替え以外)を更新する関数 */ setMetaSearchParams: (q: Partial) => void; /** * 特定のパラメーター(フィルタ・表示切り替え)を削除する関数 */ removeFilterSearchParams: (keys: (keyof P)[]) => void; /** * パラメーター全体を一括で上書きする関数 */ updateSearchParams: (params: { filterSearchParams?: Partial

; metaSearchParams?: Partial

; }) => void; /** * UI上ビューのエリアが表示されているかどうか */ viewsHidden: boolean; /** * 絞り込みが行われているかどうか */ isFiltered: boolean; /** * フィルター・表示切り替えの値 */ filterSearchParams: P; /** * UI上は値を選択しているが、検索条件には反映されていない状態のフィルター・表示切り替えの値 */ previewFilterSearchParams: P; /** * previewFilterSearchParamsを検索条件として反映する処理 */ requestBatchSearch: () => void; /** * ビューに反映されるパラメーター */ viewReflectParams: P; }; export declare const useSearch:

({ views, filters, displaySwitchOptions, bookmarks, apiPayloadOptions, disableQueryManipulation, wordSearch, searchMode, }: { views?: IndexListControlAreaViewsProps

| undefined; filters: ListControlAreaSearchFilterType

[]; displaySwitchOptions?: import('../../../areas/EXPERIMENTAL_ListControl').DisplaySwitchOptionsType

| undefined; bookmarks?: { value: (keyof P)[]; onUpdateValue: (keys: (keyof P)[]) => void; } | undefined; wordSearch?: IndexListControlAreaWordSearchProps | undefined; apiPayloadOptions?: ApiPayloadOptions | undefined; disableQueryManipulation?: boolean | undefined; searchMode?: "batch" | "incremental" | undefined; }) => UseSearchReturn

;