import { ElementRef, EventEmitter, Injector, OnInit, Renderer2 } from '@angular/core';
import { AxiomSchedulerEvent } from '../model/axiom-scheduler-event.model';
import { AxiomSchedulerMonthData } from '../model/axiom-scheduler-month-data.model';
import { AxiomSchedulerComponentCommon } from './axiom-scheduler-component-common.component';
import * as i0 from "@angular/core";
export declare enum AxiomSchedulerView {
    Year = "year"
}
export declare enum AxiomSchedulerAnimation {
    Animation1 = "animation1",
    Animation2 = "animation2",
    Animation3 = "animation3",
    Animation4 = "animation4",
    Default = "default",
    None = "none"
}
export type AxiomSchedulerTheme = 'light' | 'dark';
export declare class AxiomSchedulerComponent extends AxiomSchedulerComponentCommon implements OnInit {
    private _element;
    private _renderer;
    axEvents: AxiomSchedulerMonthData[];
    axSchedulerView: AxiomSchedulerView;
    set axTheme(axTheme: AxiomSchedulerTheme);
    set axAnimation(axAnimation: AxiomSchedulerAnimation);
    axShowLocale: true;
    axViews: AxiomSchedulerView[];
    axEventChange: EventEmitter<AxiomSchedulerEvent>;
    axEventClick: EventEmitter<AxiomSchedulerEvent>;
    axEventDeleteClick: EventEmitter<AxiomSchedulerEvent>;
    axEventEditClick: EventEmitter<AxiomSchedulerEvent>;
    axDateChange: EventEmitter<Date>;
    axViewChange: EventEmitter<AxiomSchedulerView>;
    items: any[];
    locales: {
        id: string;
        title: string;
    }[];
    private _axTheme;
    private _axAnimation;
    constructor(injector: Injector, _element: ElementRef, _renderer: Renderer2);
    ngOnInit(): void;
    refreshScheduler(refresh?: boolean, events?: AxiomSchedulerMonthData[]): void;
    changeYear(step: number): void;
    todayF(): void;
    modelFormatter(value: any): any;
    setLocale(locale: string): void;
    updateTheme(theme: 'light' | 'dark'): void;
    changeView(view: any): void;
    private step;
    private applyDefaultAnimations;
    private setViews;
    private setListeners;
    static ɵfac: i0.ɵɵFactoryDeclaration<AxiomSchedulerComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<AxiomSchedulerComponent, "ax-scheduler", never, { "axEvents": { "alias": "axEvents"; "required": false; }; "axSchedulerView": { "alias": "axSchedulerView"; "required": false; }; "axTheme": { "alias": "axTheme"; "required": false; }; "axAnimation": { "alias": "axAnimation"; "required": false; }; "axShowLocale": { "alias": "axShowLocale"; "required": false; }; "axViews": { "alias": "axViews"; "required": false; }; }, { "axEventChange": "axEventChange"; "axEventClick": "axEventClick"; "axEventDeleteClick": "axEventDeleteClick"; "axEventEditClick": "axEventEditClick"; "axDateChange": "axDateChange"; "axViewChange": "axViewChange"; }, never, never, false, never>;
}
