import { AfterViewInit, ElementRef, OnChanges, OnDestroy, SimpleChanges } from '@angular/core';
import { ThemePalette } from '@angular/material/core';
import { NgxMatTimepickerClockFace } from '../../models/ngx-mat-timepicker-clock-face.interface';
import { NgxMatTimepickerFormatType } from '../../models/ngx-mat-timepicker-format.type';
import { NgxMatTimepickerUnits } from '../../models/ngx-mat-timepicker-units.enum';
import * as i0 from "@angular/core";
export declare class NgxMatTimepickerFaceComponent implements AfterViewInit, OnChanges, OnDestroy {
    readonly clockFace: import("@angular/core").Signal<ElementRef<any>>;
    readonly clockHand: import("@angular/core").Signal<ElementRef<any>>;
    color: ThemePalette;
    faceTime: NgxMatTimepickerClockFace[];
    unit: NgxMatTimepickerUnits;
    format: NgxMatTimepickerFormatType;
    minutesGap: number;
    selectedTime: NgxMatTimepickerClockFace;
    readonly timeChange: import("@angular/core").OutputEmitterRef<NgxMatTimepickerClockFace>;
    readonly timeSelected: import("@angular/core").OutputEmitterRef<number>;
    innerClockFaceSize: number;
    isClockFaceDisabled: boolean;
    timeUnit: typeof NgxMatTimepickerUnits;
    private _isStarted;
    private _touchEndHandler;
    private _touchStartHandler;
    ngAfterViewInit(): void;
    ngOnChanges(changes: SimpleChanges): void;
    ngOnDestroy(): void;
    onMousedown(e: MouseEvent): void;
    onMouseup(e: MouseEvent): void;
    selectTime(e: MouseEvent): void;
    private _addTouchEvents;
    private _decreaseClockHand;
    private _increaseClockHand;
    private _isInnerClockFace;
    private _removeTouchEvents;
    private _selectAvailableTime;
    private _setClockHandPosition;
    static ɵfac: i0.ɵɵFactoryDeclaration<NgxMatTimepickerFaceComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<NgxMatTimepickerFaceComponent, "ngx-mat-timepicker-face", never, { "color": { "alias": "color"; "required": false; }; "faceTime": { "alias": "faceTime"; "required": false; }; "unit": { "alias": "unit"; "required": false; }; "format": { "alias": "format"; "required": false; }; "minutesGap": { "alias": "minutesGap"; "required": false; }; "selectedTime": { "alias": "selectedTime"; "required": false; }; }, { "timeChange": "timeChange"; "timeSelected": "timeSelected"; }, never, ["*", "*"], true, never>;
}
