import { TemplateRef, EventEmitter, ViewContainerRef, Injector, ComponentFactoryResolver, AfterViewInit, Renderer2, NgZone } from '@angular/core';
import { XCheckbox } from "./XCheckbox";
import { IgxCheckboxChangeEventArgs } from './igx-checkbox-change-event-args';
import { CheckboxLabelPosition } from './CheckboxLabelPosition';
import { BaseControlTheme } from "igniteui-angular-core";
import * as i0 from "@angular/core";
export declare class IgxXCheckboxComponent implements AfterViewInit {
    private renderer;
    private _elRef;
    private ngZone;
    private injector;
    private componentFactoryResolver;
    container: Element;
    private _wrapper;
    private _portalManager;
    private _root;
    _dynamicContent: ViewContainerRef;
    _childTemplateRef: TemplateRef<any>;
    constructor(renderer: Renderer2, _elRef: ViewContainerRef, ngZone: NgZone, injector: Injector, componentFactoryResolver: ComponentFactoryResolver);
    updateStyle(): void;
    ngOnDestroy(): void;
    private _implementation;
    ngAfterViewInit(): void;
    protected createImplementation(): XCheckbox;
    get i(): XCheckbox;
    private _checkbox;
    /**
 * Gets or sets the base built in theme to use for the checkbox.
*/
    get baseTheme(): BaseControlTheme;
    set baseTheme(v: BaseControlTheme);
    static ngAcceptInputType_baseTheme: BaseControlTheme | string;
    /**
     * Gets or sets the color to use for the background when the checkbox is unchecked.
    */
    get uncheckedBackgroundColor(): string;
    set uncheckedBackgroundColor(v: string);
    /**
     * Gets or sets the color to use for the actual background when the checkbox is unchecked.
    */
    get actualUncheckedBackgroundColor(): string;
    set actualUncheckedBackgroundColor(v: string);
    /**
     * Gets or sets the color to use for the background when the checkbox is checked.
    */
    get checkedBackgroundColor(): string;
    set checkedBackgroundColor(v: string);
    /**
     * Gets or sets the color to use for the check mark when the checkbox is checked.
    */
    get tickColor(): string;
    set tickColor(v: string);
    /**
     * Gets or sets the color to use for the check mark when the checkbox is checked.
    */
    get actualTickColor(): string;
    set actualTickColor(v: string);
    /**
     * Gets or sets the color to use for the check mark when the checkbox is unchecked.
    */
    get uncheckedBorderColor(): string;
    set uncheckedBorderColor(v: string);
    /**
     * Gets or sets the color to use for the check mark when the checkbox is checked.
    */
    get checkedBorderColor(): string;
    set checkedBorderColor(v: string);
    /**
     * Gets or sets the color to use for the check mark when the checkbox is checked.
    */
    get actualUncheckedBorderColor(): string;
    set actualUncheckedBorderColor(v: string);
    /**
     * Gets or sets the color to use for the check mark when the checkbox is checked.
    */
    get actualCheckedBorderColor(): string;
    set actualCheckedBorderColor(v: string);
    /**
     * Gets or sets the Width to use for the check mark when the checkbox is checked.
    */
    get borderWidth(): number;
    set borderWidth(v: number);
    static ngAcceptInputType_borderWidth: number | string;
    /**
     * Gets or sets the Width to use for the check mark when the checkbox is checked.
    */
    get actualBorderWidth(): number;
    set actualBorderWidth(v: number);
    static ngAcceptInputType_actualBorderWidth: number | string;
    /**
     * Gets or sets the corner radius to use for the checkbox.
    */
    get cornerRadius(): number;
    set cornerRadius(v: number);
    static ngAcceptInputType_cornerRadius: number | string;
    /**
     * Gets or sets the corner radius to use for the checkbox.
    */
    get tickStrokeWidth(): number;
    set tickStrokeWidth(v: number);
    static ngAcceptInputType_tickStrokeWidth: number | string;
    /**
     * Gets or sets the stroke width to use for the check mark.
    */
    get actualTickStrokeWidth(): number;
    set actualTickStrokeWidth(v: number);
    static ngAcceptInputType_actualTickStrokeWidth: number | string;
    /**
     * Gets the actual corner radius to use for the checkbox.
    */
    get actualCornerRadius(): number;
    set actualCornerRadius(v: number);
    static ngAcceptInputType_actualCornerRadius: number | string;
    /**
     * Gets or sets the color to use for the actual background when the checkbox is checked.
    */
    get actualCheckedBackgroundColor(): string;
    set actualCheckedBackgroundColor(v: string);
    /**
     * Gets or sets the id to use for the internal native checkbox.
    */
    get inputId(): string;
    set inputId(v: string);
    /**
     * Gets or sets the id to use for the checkbox.
    */
    get id(): string;
    set id(v: string);
    /**
     * Gets or sets id to use for the checkbox label.
    */
    get labelId(): string;
    set labelId(v: string);
    /**
     * Gets or sets name to use for the checkbox.
    */
    get name(): string;
    set name(v: string);
    /**
     * Gets or sets TabIndex to use for the checkbox.
    */
    get tabIndex(): number;
    set tabIndex(v: number);
    static ngAcceptInputType_tabIndex: number | string;
    /**
     * Gets or sets if the checkbox is required.
    */
    get required(): number;
    set required(v: number);
    static ngAcceptInputType_required: number | string;
    /**
     * Gets or sets the value of the aria-labelledby attribute.
    */
    get ariaLabelledBy(): string;
    set ariaLabelledBy(v: string);
    /**
     * Gets or sets the value of the aria-label attribute.
    */
    get ariaLabel(): string;
    set ariaLabel(v: string);
    /**
     * Gets or sets value to use for the checkbox.
    */
    get value(): any;
    set value(v: any);
    /**
     * Gets or sets if the checkbox is Focused.
    */
    get focused(): boolean;
    set focused(v: boolean);
    static ngAcceptInputType_focused: boolean | string;
    /**
     * Gets or sets LabelPosition to use for the checkbox.
    */
    get labelPosition(): CheckboxLabelPosition;
    set labelPosition(v: CheckboxLabelPosition);
    static ngAcceptInputType_labelPosition: CheckboxLabelPosition | string;
    /**
     * Gets or sets whether to disable the ripple effect for the checkbox.
    */
    get disableRipple(): boolean;
    set disableRipple(v: boolean);
    static ngAcceptInputType_disableRipple: boolean | string;
    /**
     * Gets or sets whether the checkbox is checked.
    */
    get checked(): boolean;
    set checked(v: boolean);
    static ngAcceptInputType_checked: boolean | string;
    /**
     * Gets or sets whether the checkbox is indeterminate.
    */
    get indeterminate(): boolean;
    set indeterminate(v: boolean);
    static ngAcceptInputType_indeterminate: boolean | string;
    /**
     * Gets or sets whether the checkbox is disabled.
    */
    get disabled(): boolean;
    set disabled(v: boolean);
    static ngAcceptInputType_disabled: boolean | string;
    /**
     * Gets or sets whether the checkbox transitions are disabled.
    */
    get disableTransitions(): boolean;
    set disableTransitions(v: boolean);
    static ngAcceptInputType_disableTransitions: boolean | string;
    findByName(name: string): any;
    protected __p: string;
    protected _hasUserValues: Set<string>;
    protected get hasUserValues(): Set<string>;
    protected __m(propertyName: string): void;
    protected _stylingContainer: any;
    protected _stylingParent: any;
    protected _inStyling: boolean;
    protected _styling(container: any, component: any, parent?: any): void;
    onDetachedFromUI(): void;
    onAttachedToUI(): void;
    /**
     * Exports visual information about the current state of the grid.
    
    */
    exportVisualModel(): any;
    /**
     * Returns a serialized copy of the exported visual model
    
    */
    exportSerializedVisualModel(): string;
    private _change;
    get change(): EventEmitter<{
        sender: any;
        args: IgxCheckboxChangeEventArgs;
    }>;
    protected _zoneRunner: (act: () => void) => void;
    protected _runInZone(act: () => void): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<IgxXCheckboxComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<IgxXCheckboxComponent, "igx-x-checkbox", never, { "baseTheme": "baseTheme"; "uncheckedBackgroundColor": "uncheckedBackgroundColor"; "actualUncheckedBackgroundColor": "actualUncheckedBackgroundColor"; "checkedBackgroundColor": "checkedBackgroundColor"; "tickColor": "tickColor"; "actualTickColor": "actualTickColor"; "uncheckedBorderColor": "uncheckedBorderColor"; "checkedBorderColor": "checkedBorderColor"; "actualUncheckedBorderColor": "actualUncheckedBorderColor"; "actualCheckedBorderColor": "actualCheckedBorderColor"; "borderWidth": "borderWidth"; "actualBorderWidth": "actualBorderWidth"; "cornerRadius": "cornerRadius"; "tickStrokeWidth": "tickStrokeWidth"; "actualTickStrokeWidth": "actualTickStrokeWidth"; "actualCornerRadius": "actualCornerRadius"; "actualCheckedBackgroundColor": "actualCheckedBackgroundColor"; "inputId": "inputId"; "id": "id"; "labelId": "labelId"; "name": "name"; "tabIndex": "tabindex"; "required": "required"; "ariaLabelledBy": "aria-labelledby"; "ariaLabel": "aria-label"; "value": "value"; "focused": "focused"; "labelPosition": "labelPosition"; "disableRipple": "disableRipple"; "checked": "checked"; "indeterminate": "indeterminate"; "disabled": "disabled"; "disableTransitions": "disableTransitions"; }, { "change": "change"; }, never, ["*"]>;
}
