import { AfterContentInit, ChangeDetectorRef, OnChanges, OnDestroy, SimpleChanges } from '@angular/core';
import { BooleanInput } from '@angular/cdk/coercion';
import { MatButton } from '@angular/material/button';
import { AswDatetimepicker } from '../datetimepicker';
import { AswDatetimepickerIntl } from '../datetimepicker-intl';
import * as i0 from "@angular/core";
/** Can be used to override the icon of a `aswDatetimepickerToggle`. */
export declare class AswDatetimepickerToggleIcon {
    static ɵfac: i0.ɵɵFactoryDeclaration<AswDatetimepickerToggleIcon, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<AswDatetimepickerToggleIcon, "[aswDatetimepickerToggleIcon]", never, {}, {}, never, never, false, never>;
}
export declare class AswDatetimepickerToggle<D> implements AfterContentInit, OnChanges, OnDestroy {
    _intl: AswDatetimepickerIntl;
    private _changeDetectorRef;
    private _stateChanges;
    icons: any;
    /** Datetimepicker instance that the button will toggle. */
    datetimepicker: AswDatetimepicker<D>;
    /** Tabindex for the toggle. */
    tabIndex: number | null;
    /** Screen-reader label for the button. */
    ariaLabel?: string;
    /** Whether the toggle button is disabled. */
    get disabled(): boolean;
    set disabled(value: boolean);
    private _disabled;
    /** Whether ripples on the toggle should be disabled. */
    disableRipple: boolean;
    /** Custom icon set by the consumer. */
    _customIcon: AswDatetimepickerToggleIcon;
    /** Underlying button element. */
    _button: MatButton;
    constructor(_intl: AswDatetimepickerIntl, _changeDetectorRef: ChangeDetectorRef, defaultTabIndex: string);
    ngOnChanges(changes: SimpleChanges): void;
    ngOnDestroy(): void;
    ngAfterContentInit(): void;
    _open(event: Event): void;
    private _watchStateChanges;
    static ngAcceptInputType_disabled: BooleanInput;
    static ngAcceptInputType_disableRipple: BooleanInput;
    static ɵfac: i0.ɵɵFactoryDeclaration<AswDatetimepickerToggle<any>, [null, null, { attribute: "tabindex"; }]>;
    static ɵcmp: i0.ɵɵComponentDeclaration<AswDatetimepickerToggle<any>, "asw-datetimepicker-toggle", ["aswDatetimepickerToggle"], { "datetimepicker": { "alias": "for"; "required": false; }; "tabIndex": { "alias": "tabIndex"; "required": false; }; "ariaLabel": { "alias": "aria-label"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "disableRipple": { "alias": "disableRipple"; "required": false; }; }, {}, ["_customIcon"], ["[aswDatetimepickerToggleIcon]"], false, never>;
}
