import { type SchemaDefinition } from '@coveo/bueno'; import type { Result } from '../../api/search/search/result.js'; import type { ConfigurationSection, FoldingSection, QuerySection } from '../../state/state-sections.js'; import type { ResultWithFolding } from './folding-slice.js'; import type { CollectionId } from './folding-state.js'; export interface RegisterFoldingActionCreatorPayload { /** * The name of the field on which to do the folding. The folded result list component will use the values of this field to resolve the collections of result items. * * @defaultValue `foldingcollection` */ collectionField?: string; /** * The name of the field that determines whether a certain result is a top result containing other child results within a collection. * * @defaultValue `foldingparent` */ parentField?: string; /** * The name of the field that uniquely identifies a result within a collection. * * @defaultValue `foldingchild` */ childField?: string; /** * The number of child results to fold under the root collection element, before expansion. * * @defaultValue `2` */ numberOfFoldedResults?: number; } export interface LoadCollectionFulfilledReturn { results: Result[]; collectionId: CollectionId; rootResult: ResultWithFolding; searchUid: string; } export declare const foldingOptionsSchemaDefinition: SchemaDefinition>; export declare const registerFolding: import("@reduxjs/toolkit").ActionCreatorWithPreparedPayload<[payload: RegisterFoldingActionCreatorPayload], RegisterFoldingActionCreatorPayload, "folding/register", never, never>; export type StateNeededByLoadCollection = ConfigurationSection & FoldingSection & QuerySection; export declare const loadCollection: import("@reduxjs/toolkit").AsyncThunk; dispatch?: import("redux-thunk").ThunkDispatch | undefined; serializedErrorType?: unknown; pendingMeta?: unknown; fulfilledMeta?: unknown; rejectedMeta?: unknown; }>;