import { ViewContainerRef } from '@angular/core';
import { MatDialog } from '@angular/material/dialog';
import { NgmOcapCoreService } from '@metad/ocap-angular/core';
import { DataSettings, EntityType, ISlicer, isSemanticCalendar, Property, TimeRange, VariableProperty } from '@metad/ocap-core';
import { BehaviorSubject } from 'rxjs';
import { SlicersCapacity } from './types';
import * as i0 from "@angular/core";
export declare class BaseSlicersComponent {
    isSemanticCalendar: typeof isSemanticCalendar;
    coreService: NgmOcapCoreService;
    _dialog: MatDialog;
    viewContainerRef?: ViewContainerRef;
    get dataSettings(): DataSettings;
    set dataSettings(value: DataSettings);
    dataSettings$: BehaviorSubject<DataSettings>;
    get entityType(): EntityType;
    set entityType(value: EntityType);
    readonly entityTypeSignal: import("@angular/core").WritableSignal<EntityType>;
    readonly entityType$: import("rxjs").Observable<EntityType>;
    readonly editable: import("@angular/core").InputSignalWithTransform<boolean, string | boolean>;
    readonly dateVariables: import("@metad/ocap-angular/core").DateVariable[];
    openSlicerCreator(property: Property | VariableProperty | SlicersCapacity): Promise<void>;
    /**
     * Open dialog for create dynamic date ranges of dimension
     *
     * @param property property of dimension
     * @param variable dynamic time variable
     */
    openDynamicDateHelp(property: Property, variable?: TimeRange): Promise<void>;
    addSlicer(slicer: ISlicer): Promise<void>;
    /**
     * Open value help dialog of property for select members
     *
     * @param property dimension property
     */
    openValueHelp(property: Property | VariableProperty): Promise<void>;
    openSlicerEditor(slicer: ISlicer): Promise<any>;
    static ɵfac: i0.ɵɵFactoryDeclaration<BaseSlicersComponent, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<BaseSlicersComponent, never, never, { "dataSettings": { "alias": "dataSettings"; "required": false; }; "entityType": { "alias": "entityType"; "required": false; }; "editable": { "alias": "editable"; "required": false; "isSignal": true; }; }, {}, never, never, false, never>;
}
