import { Schema } from '@coveo/bueno';
import type { CartInitialState } from '../../controllers/commerce/context/cart/headless-cart.js';
import type { ContextOptions } from '../../controllers/commerce/context/headless-context.js';
import { type AnalyticsConfiguration, type EngineConfiguration } from '../engine-configuration.js';
/**
 * The commerce engine configuration.
 */
export interface CommerceEngineConfiguration extends EngineConfiguration {
    /**
     * The commerce analytics configuration.
     */
    analytics: Pick<AnalyticsConfiguration, 'enabled' | 'proxyBaseUrl' | 'source'> & Required<Pick<AnalyticsConfiguration, 'trackingId'>>;
    /**
     * The commerce context options.
     */
    context: ContextOptions;
    /**
     * The initial cart state to restore.
     */
    cart?: CartInitialState;
    /**
     * The base URL to use to proxy Coveo commerce requests (e.g., `https://example.com/commerce`).
     *
     * This is an advanced option that you only set if you proxy Coveo commerce requests through your own
     * server. In most cases, you should not set this option.
     *
     * See [Headless proxy: Commerce](https://docs.coveo.com/en/headless/latest/usage/proxy#commerce).
     **/
    proxyBaseUrl?: string;
}
export declare const commerceEngineConfigurationSchema: Schema<CommerceEngineConfiguration>;
export declare function getSampleCommerceEngineConfiguration(): CommerceEngineConfiguration;
