import { ElementRef } from "@angular/core";
import { IgxCalendarViewDirective } from "../common/calendar-view.directive";
import { ControlValueAccessor } from "@angular/forms";
import type { DayInterval } from "../common/model";
import * as i0 from "@angular/core";
export declare class IgxMonthsViewComponent extends IgxCalendarViewDirective implements ControlValueAccessor {
    #private;
    el: ElementRef;
    /**
     * Sets/gets the `id` of the months view.
     * If not set, the `id` will have value `"igx-months-view-0"`.
     * ```html
     * <igx-months-view id="my-months-view"></igx-months-view>
     * ```
     * ```typescript
     * let monthsViewId =  this.monthsView.id;
     * ```
     *
     * @memberof IgxMonthsViewComponent
     */
    id: string;
    /**
     * The default css class applied to the component.
     *
     * @hidden
     */
    readonly viewClass = true;
    /**
     * @hidden @internal
     */
    get standalone(): boolean;
    set standalone(value: boolean);
    /**
     * Gets the month format option of the months view.
     * ```typescript
     * let monthFormat = this.monthsView.monthFormat.
     * ```
     */
    get monthFormat(): any;
    /**
     * Sets the month format option of the months view.
     * ```html
     * <igx-months-view> [monthFormat]="short'"</igx-months-view>
     * ```
     *
     * @memberof IgxMonthsViewComponent
     */
    set monthFormat(value: any);
    /**
     * Gets/sets whether the view should be rendered
     * according to the locale and format, if any.
     */
    formatView: boolean;
    /**
     * Returns an array of date objects which are then used to
     * properly render the month names.
     *
     * Used in the template of the component
     *
     * @hidden @internal
     */
    get range(): Date[];
    /**
     * @hidden
     */
    private _monthFormat;
    constructor(el: ElementRef, dayInterval: DayInterval);
    /**
     * @hidden
     */
    protected onMouseDown(): void;
    /**
     * Returns the locale representation of the month in the months view.
     *
     * @hidden
     */
    formattedMonth(value: Date): {
        long: string;
        formatted: string;
    };
    /**
     * @hidden
     */
    monthTracker(_: number, item: Date): string;
    /**
     * @hidden
     */
    protected initFormatter(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<IgxMonthsViewComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<IgxMonthsViewComponent, "igx-months-view", never, { "id": { "alias": "id"; "required": false; }; "standalone": { "alias": "standalone"; "required": false; }; "monthFormat": { "alias": "monthFormat"; "required": false; }; "formatView": { "alias": "formatView"; "required": false; }; }, {}, never, never, true, never>;
    static ngAcceptInputType_formatView: unknown;
}
