import { NgControl } from '@angular/forms';
import { TranslationService } from '@vcd/i18n';
import { BaseFormControl } from '../base-form-control';
import * as i0 from "@angular/core";
export declare enum CheckBoxStyling {
    CHECKBOX = "checkbox",
    TOGGLESWITCH = "toggle-switch"
}
/**
 * {@link FormControl} wrapper around a input HTML element of checkbox type. The label input from
 * {@link BaseFormControl} is used for displaying a label on the left of a form field and the text input is used for
 * displaying label on the right of checkbox. Use the 'styling' property with a value of 'checkbox' or 'toggle-switch'
 * to display a checkbox or toggle switch on the UI.
 *
 * Example:
 *      <vcd-form-checkbox [formControlName]="Fields.port" [label]="'enabled'|translate"
 *                         [text]="'feature.enabled'|translate">
 *      </vcd-form-checkbox>
 */
export declare class FormCheckboxComponent extends BaseFormControl<boolean> {
    protected translationService: TranslationService;
    /**
     * The label that appears next to the control
     */
    text: string;
    /**
     * Styling for the checkbox.
     */
    styling: CheckBoxStyling;
    /**
     * Put the label text on the right.
     */
    rightLabel: boolean;
    /**
     * A shape for the icon that appears next to the checkbox.
     */
    iconShape: string;
    /**
     * The direction for displaying the hint
     */
    hintPosition: string;
    /**
     * Hint to display in the content of a signpost
     */
    hint: string;
    get isCheckbox(): boolean;
    constructor(controlDirective: NgControl, translationService: TranslationService);
    static ɵfac: i0.ɵɵFactoryDeclaration<FormCheckboxComponent, [{ optional: true; self: true; }, null]>;
    static ɵcmp: i0.ɵɵComponentDeclaration<FormCheckboxComponent, "vcd-form-checkbox", never, { "text": "text"; "styling": "styling"; "rightLabel": "rightLabel"; "iconShape": "iconShape"; "hintPosition": "hintPosition"; "hint": "hint"; }, {}, never, ["footer"], false, never>;
}
