import { CdkStep } from '@angular/cdk/stepper';
import { FormGroup } from '@angular/forms';
import { C8yStepper, GainsightService } from '@c8y/ngx-components';
import { FormlyFieldConfig } from '@ngx-formly/core';
import { BsModalRef } from 'ngx-bootstrap/modal';
import { BehaviorSubject, Subject } from 'rxjs';
import { LoriotDevice, LoriotDeviceFormly } from './loriot-device-registration.model';
import { LoriotProviderService } from './loriot-provider.service';
import * as i0 from "@angular/core";
type LoriotState = 'loadPending' | 'loadSuccess' | 'loadError' | 'registrationPending' | 'registrationSuccess' | 'registrationError';
export declare class LoriotDeviceRegistrationComponent {
    bsModalRef: BsModalRef;
    private loriotService;
    private gainsightService;
    stepper: C8yStepper;
    readonly PAGING: object;
    form: FormGroup<{}>;
    model: LoriotDeviceFormly;
    protocols$: import("rxjs").Observable<import("packages/client/lib").IResultList<import("packages/client/lib").IManagedObject>>;
    connections$: import("rxjs").Observable<{
        res: import("packages/client/lib").IFetchResponse;
        data: any;
    }>;
    unsubscribe$: Subject<void>;
    load$: import("rxjs").Observable<any[]>;
    fields: FormlyFieldConfig[];
    registrationStepLabels: {
        next: "Register";
    };
    finalStepLabels: {
        back: "Close";
    };
    state: LoriotState;
    errors$: BehaviorSubject<Error[]>;
    errorMessages$: import("rxjs").Observable<any>;
    constructor(bsModalRef: BsModalRef, loriotService: LoriotProviderService, gainsightService: GainsightService);
    create(event: {
        stepper: C8yStepper;
        step: CdkStep;
    }): Promise<void>;
    getLoriotDeviceToSend(): LoriotDevice;
    getProtocols$(): import("rxjs").Observable<import("packages/client/lib").IResultList<import("packages/client/lib").IManagedObject>>;
    getConnections$(): import("rxjs").Observable<{
        res: import("packages/client/lib").IFetchResponse;
        data: any;
    }>;
    getApplications$(name: any): import("rxjs").Observable<import("packages/client/lib").IResultList<import("./loriot-device-registration.model").Application>>;
    ngOnDestroy(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<LoriotDeviceRegistrationComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<LoriotDeviceRegistrationComponent, "c8y-loriot-registration", never, {}, {}, never, never, false, never>;
}
export {};
//# sourceMappingURL=loriot-device-registration.component.d.ts.map