import { StaticAsset, StaticAssetsService } from '@c8y/ngx-components/static-assets/data';
import { StaticAssetsModalComponent } from '@c8y/ngx-components/static-assets/modal';
import { BsModalService } from 'ngx-bootstrap/modal';
import * as i0 from '@angular/core';
import { ControlValueAccessor } from '@angular/forms';

declare class StaticAssetsModalService {
    private modal;
    constructor(modal: BsModalService);
    pickStaticAsset(options?: Partial<Pick<StaticAssetsModalComponent, 'supportedFileExtensions' | 'assetType' | 'layout'>>): Promise<StaticAsset>;
    static ɵfac: i0.ɵɵFactoryDeclaration<StaticAssetsModalService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<StaticAssetsModalService>;
}

declare class StaticAssetsFilePickerComponent implements ControlValueAccessor {
    private staticAssetsModal;
    private staticAssets;
    isCSSURL: boolean;
    staticAssetType: StaticAssetsModalComponent['assetType'];
    supportedFileExtensions: StaticAssetsModalComponent['supportedFileExtensions'];
    layout: StaticAssetsModalComponent['layout'];
    size: number;
    loading: boolean;
    currentFile: StaticAsset | undefined;
    currentValue: string;
    private onChange;
    private onTouched;
    constructor(staticAssetsModal: StaticAssetsModalService, staticAssets: StaticAssetsService);
    writeValue(value: string): void;
    registerOnChange(fn: (value: string) => void): void;
    registerOnTouched(fn: () => void): void;
    loadFileDetails(currentUrl: string): Promise<void>;
    clear(): void;
    openFilePicker(): Promise<void>;
    private ensureFileExists;
    static ɵfac: i0.ɵɵFactoryDeclaration<StaticAssetsFilePickerComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<StaticAssetsFilePickerComponent, "c8y-static-assets-file-picker", never, { "isCSSURL": { "alias": "isCSSURL"; "required": false; }; "staticAssetType": { "alias": "staticAssetType"; "required": false; }; "supportedFileExtensions": { "alias": "supportedFileExtensions"; "required": false; }; "layout": { "alias": "layout"; "required": false; }; "size": { "alias": "size"; "required": false; }; }, {}, never, never, true, never>;
}

export { StaticAssetsFilePickerComponent, StaticAssetsModalService };
//# sourceMappingURL=index.d.ts.map
