///
///
import type { SearchProduct, SearchHint } from "../types";
/**
* Composable для управления состоянием поиска
*/
export declare function useSearchState(): {
searchQuery: import("vue").Ref;
showSuggestions: import("vue").Ref;
isLoading: import("vue").Ref;
isFastLoading: import("vue").Ref;
error: import("vue").Ref;
historyQueries: import("vue").Ref;
popularQueries: import("vue").Ref;
popularProducts: import("vue").Ref<{
id: string;
name: string;
description?: string | undefined;
price: number;
picture: string | null;
url: string | null;
vendor_code: string;
properties: {
name: string;
values: {
value: string;
}[];
}[];
category?: {
id: string;
name: string;
} | null | undefined;
classification_properties?: {
id: string;
name: string;
value: {
id: string;
name: string;
};
}[] | undefined;
}[], SearchProduct[] | {
id: string;
name: string;
description?: string | undefined;
price: number;
picture: string | null;
url: string | null;
vendor_code: string;
properties: {
name: string;
values: {
value: string;
}[];
}[];
category?: {
id: string;
name: string;
} | null | undefined;
classification_properties?: {
id: string;
name: string;
value: {
id: string;
name: string;
};
}[] | undefined;
}[]>;
searchResults: import("vue").Ref<{
id: string;
name: string;
description?: string | undefined;
price: number;
picture: string | null;
url: string | null;
vendor_code: string;
properties: {
name: string;
values: {
value: string;
}[];
}[];
category?: {
id: string;
name: string;
} | null | undefined;
classification_properties?: {
id: string;
name: string;
value: {
id: string;
name: string;
};
}[] | undefined;
}[], SearchProduct[] | {
id: string;
name: string;
description?: string | undefined;
price: number;
picture: string | null;
url: string | null;
vendor_code: string;
properties: {
name: string;
values: {
value: string;
}[];
}[];
category?: {
id: string;
name: string;
} | null | undefined;
classification_properties?: {
id: string;
name: string;
value: {
id: string;
name: string;
};
}[] | undefined;
}[]>;
productHints: import("vue").Ref<{
word: string;
hint: string;
}[], SearchHint[] | {
word: string;
hint: string;
}[]>;
fullHints: import("vue").Ref;
hasSearchResults: import("vue").Ref;
hasHistory: import("vue").ComputedRef;
hasPopularQueries: import("vue").ComputedRef;
hasPopularProducts: import("vue").ComputedRef;
hasSearchResultsData: import("vue").ComputedRef;
hasProductHints: import("vue").ComputedRef;
hasFullHints: import("vue").ComputedRef;
isEmptyQuery: import("vue").ComputedRef;
resetSearchState: () => void;
updateSearchQuery: (query: string) => void;
toggleSuggestions: (show: boolean) => void;
setFastLoading: (loading: boolean) => void;
};
//# sourceMappingURL=useSearchState.d.ts.map