import type { FLinkedSheetSlicerBuilder } from './f-slicer-builder';
import type { FLinkedSheetTimelineBuilder } from './f-timeline-builder';
import { FSheetPivotChart } from '@univerjs-pro/sheets-pivot-chart/facade';
/** @ignore */
export interface IFSheetPivotChartSlicerMixin {
    /**
     * Creates a detached Slicer Builder using the stable original source field ID, not its name/report field ID.
     * The PivotChart source is resolved now and locked through every fluent call; linked charts normalize to their owner.
     * Insert on the desired same-Workbook host Worksheet; this method does not write a model or change selection.
     *
     * @param {string} fieldId Stable original Pivot source ID from getSourceFieldsInfo().id, not a name/report field ID.
     * @returns {FLinkedSheetSlicerBuilder} A detached configuration Builder; no command has run.
     * @throws If the source/field is unavailable or unsupported.
     * @see {@link FWorksheet.insertSlicer}
     * @example
     * ```ts
     * const info = source.newSlicer(field.id).setCaption(field.name).setPosition("J2").build();
     * const control = await dashboard.insertSlicer(info);
     * ```
     */
    newSlicer(fieldId: string): FLinkedSheetSlicerBuilder;
    /**
     * Creates a detached Timeline Builder using the stable original source field ID, not its name/report field ID.
     * The PivotChart source is resolved now and locked through every fluent call; linked charts normalize to their owner.
     * Insert on the desired same-Workbook host Worksheet; this method does not write a model or change selection.
     * Only supported original Pivot date fields are accepted, not Table/text/calculated/grouped fields.
     *
     * @param {string} fieldId Stable original Pivot source ID from getSourceFieldsInfo().id, not a name/report field ID.
     * @returns {FLinkedSheetTimelineBuilder} A detached configuration Builder; no command has run.
     * @throws If the source/field is unavailable or unsupported.
     * @see {@link FWorksheet.insertTimeline}
     * @example
     * ```ts
     * const info = source.newTimeline(field.id).setCaption(field.name).setPosition("J2").build();
     * const control = await dashboard.insertTimeline(info);
     * ```
     */
    newTimeline(fieldId: string): FLinkedSheetTimelineBuilder;
}
/** @ignore */
export declare class FSheetPivotChartSlicerMixin extends FSheetPivotChart implements IFSheetPivotChartSlicerMixin {
    newSlicer(fieldId: string): FLinkedSheetSlicerBuilder;
    newTimeline(fieldId: string): FLinkedSheetTimelineBuilder;
}
declare module '@univerjs-pro/sheets-pivot-chart/facade' {
    interface FSheetPivotChart extends IFSheetPivotChartSlicerMixin {
    }
}
