import type { ParameterManager, ParameterManagerProps, ParameterManagerState } from '../../../../controllers/commerce/core/parameter-manager/headless-core-parameter-manager.js';
import type { Parameters } from '../../../../features/commerce/parameters/parameters-actions.js';
import type { ProductListingParameters } from '../../../../features/commerce/product-listing-parameters/product-listing-parameters-actions.js';
import type { CommerceSearchParameters } from '../../../../features/commerce/search-parameters/search-parameters-actions.js';
import type { SearchAndListingControllerDefinitionWithProps } from '../../types/controller-definitions.js';
export type { CommerceSearchParameters, ParameterManager, ParameterManagerProps, ParameterManagerState, Parameters, ProductListingParameters, };
export type ParameterManagerDefinition = SearchAndListingControllerDefinitionWithProps<ParameterManager<ProductListingParameters | CommerceSearchParameters>, SSRParameterManagerProps<ProductListingParameters | CommerceSearchParameters>>;
/**
 * Defines a `ParameterManager` controller instance.
 * @group Definers
 *
 * @returns The `ParameterManager` controller definition.
 *
 * Note: This controller is automatically included in all engine definitions. You do not need to add it manually to your engine definition configuration.
 */
export declare function defineParameterManager(): ParameterManagerDefinition;
export interface SSRParameterManagerProps<T extends Parameters> extends Omit<ParameterManagerProps<T>, 'excludeDefaultParameters'> {
}
