import { ElementRef, EventEmitter } from '@angular/core';
import { ImageConverter, CanDisableConstructor, IsGroupedConstructor } from '@bravobit/bb-foundation';
import { ControlValueAccessor } from '@angular/forms';
declare class BbImagePickerBase {
}
declare const BbImagePickerMixinBase: IsGroupedConstructor & CanDisableConstructor & typeof BbImagePickerBase;
export declare class BbImagePicker extends BbImagePickerMixinBase implements ControlValueAccessor {
    private _converter;
    fileInput: ElementRef<HTMLInputElement>;
    label: string | null;
    placeholder: string | null;
    styleDimensions: {
        width: string;
        height: string;
    } | null;
    cropDimensions: {
        width: number;
        height: number;
    } | null;
    private _value$;
    constructor(_converter: ImageConverter);
    value: string | null;
    valueChange: EventEmitter<string>;
    readonly image: import("rxjs").Observable<string>;
    onFileChange(event: any): Promise<void>;
    openFilePicker(): void;
    onTouchedCallback: () => void;
    onChangeCallback: (_: string | null) => void;
    writeValue(value: string | null): void;
    registerOnChange(method: (_: string | null) => void): void;
    registerOnTouched(method: () => void): void;
    setDisabledState(isDisabled: boolean): void;
}
export {};
