import { type FilterBarComponentProvider, type OptionalFilterBarComponentProvider } from "../../presentation/dashboardContexts/types.js";
import { type CustomFilterBarComponent } from "../../presentation/filterBar/filterBar/types.js";
import { type FilterBarRenderingMode, type IFilterBarCustomizer } from "../customizer.js";
import { type IDashboardCustomizationLogger } from "./customizationLogging.js";
import { type CustomizerMutationsContext } from "./types.js";
interface IFilterBarCustomizerResult {
    FilterBarComponent: CustomFilterBarComponent | undefined;
}
/**
 * @internal
 */
export declare class DefaultFilterBarCustomizer implements IFilterBarCustomizer {
    private readonly logger;
    private readonly mutationContext;
    private state;
    private updated;
    constructor(logger: IDashboardCustomizationLogger, mutationContext: CustomizerMutationsContext, defaultProvider?: FilterBarComponentProvider);
    setRenderingMode: (mode: FilterBarRenderingMode) => this;
    withCustomProvider: (provider: (props: import("../../presentation/filterBar/filterBar/types.js").IFilterBarProps) => CustomFilterBarComponent | undefined) => IFilterBarCustomizer;
    withCustomDecorator(providerFactory: (next: FilterBarComponentProvider) => OptionalFilterBarComponentProvider): IFilterBarCustomizer;
    getCustomizerResult: () => IFilterBarCustomizerResult;
    sealCustomizer: () => this;
}
export {};
//# sourceMappingURL=filterBarCustomizer.d.ts.map