import { AfterViewInit, ChangeDetectorRef, EventEmitter } from '@angular/core';
import { ControlValueAccessor } from '@angular/forms';
import * as i0 from "@angular/core";
export declare class ToggleComponent implements ControlValueAccessor, AfterViewInit {
    private cdr;
    /**
     * @ignore
     */
    private toggleClassName;
    /**
     * @ignore
     */
    private _checked;
    /**
     * Input id
     */
    inputId: string;
    /**
     * Input name
     */
    name: string;
    /**
     * Input size
     */
    size: 'md' | 'lg';
    /**
     * Whether input is required or not
     */
    required: boolean;
    /**
     * Whether the toggle is checked or not
     */
    set isChecked(value: boolean);
    get isChecked(): boolean;
    /**
     * Whether the toggle is disabled or not
     */
    isDisabled: boolean;
    /**
     * Whether the toggle color is inherited from parent
     */
    isColorInherited?: boolean;
    /**
     * Text alternative for assistive technologies
     * @see https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-label
     */
    ariaLabel: string;
    /**
     * Text alternative for assistive technologies based on visible text
     * @see https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Attributes/aria-labelledby
     */
    ariaLabelledby: string;
    /**
     * Output that emits checked value on change only
     */
    valueChange: EventEmitter<boolean>;
    /**
     * @ignore
     */
    private _inputElement;
    /**
     * @ignore
     */
    iconWrapper: any;
    /**
     * Whether toggle has an icon
     */
    hasIcon: boolean;
    constructor(cdr: ChangeDetectorRef);
    ngAfterViewInit(): void;
    /**
     * @ignore
     */
    private _onChange;
    /**
     * @ignore
     */
    private _onTouched;
    /**
     * @ignore
     */
    _onChangeEvent(event: Event): void;
    /**
     * @ignore
     */
    _onInputClick(event: Event): void;
    /**
     * Implemented as part of ControlValueAccessor.
     * @ignore
     */
    writeValue(value: any): void;
    /**
     * Implemented as part of ControlValueAccessor.
     * @ignore
     */
    registerOnChange(fn: any): void;
    /**
     * Implemented as part of ControlValueAccessor.
     * @ignore
     */
    registerOnTouched(fn: any): void;
    /**
     * Implemented as part of ControlValueAccessor.
     * @ignore
     */
    setDisabledState(isDisabled: boolean): void;
    /**
     * @ignore
     */
    getToggleSizeClass(): string;
    /**
     * @ignore
     */
    getToggleIsDisabledClass(): string;
    getToggleInheritColorClass(): string;
    static ɵfac: i0.ɵɵFactoryDeclaration<ToggleComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<ToggleComponent, "nj-toggle", never, { "inputId": { "alias": "inputId"; "required": false; }; "name": { "alias": "name"; "required": false; }; "size": { "alias": "size"; "required": false; }; "required": { "alias": "required"; "required": false; }; "isChecked": { "alias": "isChecked"; "required": false; }; "isDisabled": { "alias": "isDisabled"; "required": false; }; "isColorInherited": { "alias": "isColorInherited"; "required": false; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; }; "ariaLabelledby": { "alias": "ariaLabelledby"; "required": false; }; }, { "valueChange": "valueChange"; }, never, ["[njToggleIcon]", "*"], true, never>;
}
