import { ComponentBase } from '../ComponentBase';
import { RunConfig } from '../../DomRender';
import { OtherData } from '../../lifecycle/OnChangeAttrRender';
import { OnCreateRenderDataParams } from '../../lifecycle/OnCreateRenderData';
export declare namespace CheckBox {
    export const selector = "dr-checkbox";
    export type Attribute = {
        class?: string;
    };
    export type ChangeOption = {
        type: 'initialize' | 'event' | 'attributeChange';
    };
    export type WrapAttribute = {
        class?: string;
        name?: string;
        checked?: boolean;
        change?: (checked: boolean, option: ChangeOption) => void;
    };
    class CheckBoxBase extends ComponentBase<Attribute> {
        hidden: boolean;
    }
    export class Checked extends CheckBoxBase {
        name: string;
        constructor();
    }
    export class UnChecked extends CheckBoxBase {
        name: string;
        constructor();
    }
    export class CheckBox extends ComponentBase<WrapAttribute> {
        private checked;
        private inputElement?;
        change(option: ChangeOption, checked?: boolean): void;
        private setChildrenHidden;
        onCreatedThisChild(child: CheckBoxBase, childData: OnCreateRenderDataParams): void;
        onInitInputElement(element: HTMLInputElement): void;
        onChangeAttrRender(name: string, val: any, other: OtherData): void;
    }
    export {};
}
declare const _default: {
    checkBoxChecked: (config?: RunConfig) => import("../../configs/TargetElement").TargetElement;
    checkBoxUnchecked: (config?: RunConfig) => import("../../configs/TargetElement").TargetElement;
    checkBox: (config?: RunConfig) => import("../../configs/TargetElement").TargetElement;
};
export default _default;
//# sourceMappingURL=CheckBox.d.ts.map