import { Moment } from "moment/moment";
import { Locator } from "playwright-core";
import { Atom } from "../../atom";
import { OverlayAtom } from "../overlay/overlay.atom";
import { TextboxAtom } from "../textbox/textbox.atom";
export declare class DatepickerAtom extends Atom {
    static EXPECTED_FORMAT: string;
    static CSS_CLASS: string;
    static MONTHNAMES_SHORT: string[];
    static MONTHNAMES_LONG: string[];
    get getOverlay(): OverlayAtom;
    get textbox(): TextboxAtom;
    selectDate: (day: number) => Promise<void>;
    selectMonth: (month: string) => Promise<void>;
    selectYear: (year: number) => Promise<void>;
    get getInput(): Locator;
    formatDate(date: Moment, localeDateStringFormat: string): string;
    toHaveValue: (value: string) => Promise<void>;
    acceptText: (text: string) => Promise<void>;
    clearText: () => Promise<void>;
    getMonthElement: (month: string, index?: number) => Locator;
    getYearElement: (year: string, index?: number) => Locator;
    deleteTextManually: () => Promise<void>;
    /**
     * Gets title which will be after current title is clicked.
     * For example, when daypicker mode is enabled then it gets title of monthpicker.
     * In monthpicker mode gets title of yearpicker.
     * @returns {Promise<string>}
     */
    getLargerPeriodTitle(): Promise<string>;
    clickTitle(): Promise<void>;
    clickTodayButton: () => Promise<void>;
    /** @deprecated As of Nova v11, use 'toggle' method instead. Removal: NUI-5865 */
    clickCalendarIcon: () => Promise<void>;
    toggle: () => Promise<void>;
    clickChangeModeButton: () => Promise<void>;
    clickFirstCalendarDate: () => Promise<void>;
    isInputValid: () => Promise<boolean>;
    isNotInputValid: () => Promise<boolean>;
    get getActiveDay(): Locator;
    get getActiveDayText(): Locator;
    get getTitleText(): Locator;
    goNext(): Promise<void>;
    goBack(): Promise<void>;
    clickInput: () => Promise<void>;
    get todayButton(): Locator;
    getMonthFromTitle: () => Promise<string>;
    getPreviousMonthTitle(currentMonth: string, format?: string): string;
    getNextMonthTitle(currentMonth: string, format?: string): string;
    private clickCalendarItem;
    private selectButton;
    private selectDayButtonByIndex;
    private getLocatorByCss;
    toBeDisabled(): Promise<void>;
    toBeEnabled(): Promise<void>;
}
