import { OnChanges, SimpleChanges } from '@angular/core';
import { ThemePalette } from '@angular/material/core';
import { FloatLabelType } from '@angular/material/form-field';
import { NgxMatTimepickerUnits } from '../../models/ngx-mat-timepicker-units.enum';
import { NgxMatTimepickerParserPipe } from '../../pipes/ngx-mat-timepicker-parser.pipe';
import { NgxMatTimepickerClockFace } from '../../models/ngx-mat-timepicker-clock-face.interface';
import * as i0 from "@angular/core";
export declare class NgxMatTimepickerControlComponent implements OnChanges {
    private _timeParser;
    static nextId: number;
    readonly color: import("@angular/core").InputSignal<ThemePalette>;
    readonly floatLabel: import("@angular/core").InputSignal<FloatLabelType>;
    disabled: boolean;
    id: number;
    isFocused: boolean;
    max: number;
    min: number;
    placeholder: string;
    preventTyping: boolean;
    time: number;
    timeList: NgxMatTimepickerClockFace[];
    timeUnit: NgxMatTimepickerUnits;
    readonly timeChanged: import("@angular/core").OutputEmitterRef<number>;
    private _previousTime;
    constructor(_timeParser: NgxMatTimepickerParserPipe);
    changeTime(event: InputEvent): void;
    decrease(): void;
    increase(): void;
    ngOnChanges(changes: SimpleChanges): void;
    onBlur(): void;
    onFocus(): void;
    onKeydown(event: KeyboardEvent): void;
    onModelChange(value: string): void;
    private _changeTimeIfValid;
    private _getAvailableTime;
    private _getNextAvailableTime;
    private _getPrevAvailableTime;
    private _isSelectedTimeDisabled;
    private _setAvailableTime;
    static ɵfac: i0.ɵɵFactoryDeclaration<NgxMatTimepickerControlComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<NgxMatTimepickerControlComponent, "ngx-mat-timepicker-time-control", never, { "color": { "alias": "color"; "required": false; "isSignal": true; }; "floatLabel": { "alias": "floatLabel"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; }; "max": { "alias": "max"; "required": false; }; "min": { "alias": "min"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "preventTyping": { "alias": "preventTyping"; "required": false; }; "time": { "alias": "time"; "required": false; }; "timeList": { "alias": "timeList"; "required": false; }; "timeUnit": { "alias": "timeUnit"; "required": false; }; }, { "timeChanged": "timeChanged"; }, never, never, true, never>;
    static ngAcceptInputType_disabled: unknown;
    static ngAcceptInputType_preventTyping: unknown;
}
