import { ChangeDetectorRef, OnChanges, OnInit, SimpleChanges } from '@angular/core';
import { DayItem, HOURS, PghSelectedHoursModel, WeekDay } from './day-hour-picker.constant';
import { BreakpointObserver } from '@angular/cdk/layout';
import { PghLoader } from '@tapsellorg/angular-material-library/src/lib/loader';
import * as i0 from "@angular/core";
declare const PghDayHourPickerComponent_base: (new (...args: any[]) => {
    _destroyed$: import("rxjs").Subject<unknown>;
    ngOnDestroy(): void;
}) & (new (...args: any[]) => {});
export declare class PghDayHourPickerComponent extends PghDayHourPickerComponent_base implements OnInit, OnChanges {
    private breakpointObserver;
    private cdr;
    selectedHoursChange: import("@angular/core").OutputEmitterRef<PghSelectedHoursModel | null>;
    loader: import("@angular/core").InputSignal<PghLoader | undefined>;
    selectedHours: import("@angular/core").InputSignal<PghSelectedHoursModel | undefined>;
    allDays: import("@angular/core").WritableSignal<DayItem[]>;
    hourItems: import("@angular/core").WritableSignal<import("./day-hour-picker.constant").HourItem[]>;
    daysDictionary: Map<WeekDay, string>;
    weekEnds: DayItem[];
    weekDays: DayItem[];
    isMobile: import("@angular/core").WritableSignal<boolean>;
    selectedOption: import("@angular/core").WritableSignal<"always" | "weekend" | "weekday" | "none">;
    constructor(breakpointObserver: BreakpointObserver, cdr: ChangeDetectorRef);
    ngOnInit(): void;
    ngOnChanges(changes: SimpleChanges): void;
    fillTable(): void;
    getSelectedOption(): "always" | "weekend" | "weekday" | "none";
    onHourHovered(h: HOURS): void;
    onMouseLeave(h: HOURS): void;
    onDayHovered(id: string): void;
    onDayLeave(id: string): void;
    unSelectAllCells(): void;
    getSelectedDays(): WeekDay[];
    updateHourItemsState(): void;
    onDaySelected(id: string): void;
    onHourSelected(h: HOURS): void;
    onCellSelected(h: DayItem['hours'][number]): void;
    onClickAlways(): void;
    onClickWeekend(): void;
    onClickWeekDay(): void;
    private onObserveBreakpoints;
    sendSelectedHours(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<PghDayHourPickerComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<PghDayHourPickerComponent, "pgh-day-hour-picker", never, { "loader": { "alias": "loader"; "required": false; "isSignal": true; }; "selectedHours": { "alias": "selectedHours"; "required": false; "isSignal": true; }; }, { "selectedHoursChange": "selectedHoursChange"; }, never, never, false, never>;
}
export {};
