import { ElementRef } from '@angular/core';
import { BaseValueAccessor } from '@nativescript/angular';
import { View } from '@nativescript/core';
import * as i0 from "@angular/core";
import * as i1 from "@angular/forms";
export declare type CheckableView = {
    checked: boolean;
} & View;
/**
 * The accessor for setting checked property and listening to changes that is used by the
 * {@link NgModel} directives.
 *
 *  ### Example
 *  ```
 *  <CheckBox [(ngModel)]="model.test">
 *  ```
 */
export declare class CheckedValueAccessor extends BaseValueAccessor<CheckableView> {
    constructor(elementRef: ElementRef);
    checkedChangeListener(event: any): void;
    onTouched: () => void;
    writeValue(value: any): void;
    registerOnTouched(fn: () => void): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<CheckedValueAccessor, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<CheckedValueAccessor, "CheckBox[ngModel], CheckBox[formControlName], CheckBox[formControl], checkBox[ngModel], checkBox[formControlName], checkBox[formControl], check-box[ngModel], check-box[formControlName], check-box[formControl]", never, {}, {}, never>;
}
export declare class TNSCheckBoxModule {
    static ɵfac: i0.ɵɵFactoryDeclaration<TNSCheckBoxModule, never>;
    static ɵmod: i0.ɵɵNgModuleDeclaration<TNSCheckBoxModule, [typeof CheckedValueAccessor], [typeof i1.FormsModule], [typeof i1.FormsModule, typeof CheckedValueAccessor]>;
    static ɵinj: i0.ɵɵInjectorDeclaration<TNSCheckBoxModule>;
}
