import { OnDestroy, OnInit } from '@angular/core';
import { ThemePalette } from '@angular/material/core';
import { Subject } from 'rxjs';
import { NgxMatTimepickerEventService } from '../services/ngx-mat-timepicker-event.service';
import { NgxMatTimepickerLocaleService } from '../services/ngx-mat-timepicker-locale.service';
import { NgxMatTimepickerService } from '../services/ngx-mat-timepicker.service';
import { NgxMatTimepickerUnits } from '../models/ngx-mat-timepicker-units.enum';
import { NgxMatTimepickerClockFace } from '../models/ngx-mat-timepicker-clock-face.interface';
import { NgxMatTimepickerPeriods } from '../models/ngx-mat-timepicker-periods.enum';
import { NgxMatTimepickerConfig } from '../models/ngx-mat-timepicker-config.interface';
import * as i0 from "@angular/core";
export declare class NgxMatTimepickerBaseDirective implements OnInit, OnDestroy {
    protected _timepickerSrv: NgxMatTimepickerService;
    protected _eventSrv: NgxMatTimepickerEventService;
    protected _timepickerLocaleSrv: NgxMatTimepickerLocaleService;
    data: NgxMatTimepickerConfig;
    protected readonly color: import("@angular/core").ModelSignal<ThemePalette>;
    get defaultTime(): string;
    set defaultTime(time: string);
    private get _locale();
    readonly selectedHour: import("@angular/core").Signal<NgxMatTimepickerClockFace>;
    readonly selectedHour$: import("rxjs").Observable<NgxMatTimepickerClockFace>;
    readonly selectedMinute: import("@angular/core").Signal<NgxMatTimepickerClockFace>;
    readonly selectedMinute$: import("rxjs").Observable<NgxMatTimepickerClockFace>;
    readonly selectedPeriod: import("@angular/core").Signal<NgxMatTimepickerPeriods>;
    readonly selectedPeriod$: import("rxjs").Observable<NgxMatTimepickerPeriods>;
    activeTimeUnit: NgxMatTimepickerUnits;
    timeUnit: typeof NgxMatTimepickerUnits;
    protected _defaultTime: string;
    protected _subsCtrl$: Subject<void>;
    constructor(_timepickerSrv: NgxMatTimepickerService, _eventSrv: NgxMatTimepickerEventService, _timepickerLocaleSrv: NgxMatTimepickerLocaleService, data: NgxMatTimepickerConfig);
    changePeriod(period: NgxMatTimepickerPeriods): void;
    changeTimeUnit(unit: NgxMatTimepickerUnits): void;
    close(): void;
    ngOnDestroy(): void;
    ngOnInit(): void;
    onHourChange(hour: NgxMatTimepickerClockFace): void;
    onHourSelected(hour: number): void;
    onKeydown(e: KeyboardEvent): void;
    onMinuteChange(minute: NgxMatTimepickerClockFace): void;
    setTime(): void;
    protected _defineTime(): void;
    protected _onTimeChange(): void;
    protected _setDefaultTime(time: string): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<NgxMatTimepickerBaseDirective, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<NgxMatTimepickerBaseDirective, "[ngxMatTimepickerBase]", never, { "color": { "alias": "color"; "required": false; "isSignal": true; }; "defaultTime": { "alias": "defaultTime"; "required": false; }; }, { "color": "colorChange"; }, never, never, true, never>;
}
