import { OnInit, SimpleChange, EventEmitter } from '@angular/core';
import moment from 'moment';
import { TimeRange } from '../time-range';
import { Booked } from '../booked';
import { Hours } from '../hours';
import { HoursOfDay } from './hours-of-day';
import { TimeClass } from './time-class.enum';
export declare class TimePickerComponent implements OnInit {
    timeCells: moment.Moment[];
    nowTime: moment.Moment;
    bookeds: Booked[];
    hours: Hours[];
    selected: EventEmitter<TimeRange>;
    onerror: EventEmitter<TimeRange>;
    start: moment.Moment;
    end: moment.Moment;
    constructor();
    ngOnInit(): void;
    initBooksOrHours(): void;
    onClear(): void;
    emitSelected(): void;
    addHalfHour(v: moment.Moment): moment.Moment;
    emitError(): void;
    onSelected(value: moment.Moment): boolean;
    includesDisable(start: moment.Moment, end: moment.Moment): boolean;
    includesBooked(v: moment.Moment): boolean;
    includesCloses(v: moment.Moment): boolean;
    isBetweenNotEnd(v: moment.Moment, s: moment.Moment, e: moment.Moment): boolean;
    isBetweenDate(v: moment.Moment, s: moment.Moment, e: moment.Moment): boolean;
    isBetweenM(v: moment.Moment, s: moment.Moment, e: moment.Moment): boolean;
    getClassBy(value: moment.Moment): TimeClass;
    isSameDay(v: moment.Moment): boolean;
    getDefaultOpenHours(): HoursOfDay;
    nextHalfHourInNow(): moment.Moment;
    replaceStartByNow(oh: HoursOfDay): HoursOfDay;
    getHoursForDays(): void;
    setHourMinuteIgnorDate(v: moment.Moment): moment.Moment;
    createHours(oh: HoursOfDay): void;
    getOpenHoursOnDated(): Hours[];
    toHoursOfDayFrom(ts: Hours[]): HoursOfDay;
    ngOnChanges(changes: {
        [propKey: string]: SimpleChange;
    }): void;
}
