import { OnDestroy, OnInit } from '@angular/core';
import { FormlyFieldConfig, FormlyFormOptions } from '@ngx-formly/core';
import { LWM2MEndpoint } from '@c8y/ngx-components/protocol-lwm2m/model';
import { FormGroup } from '@angular/forms';
import { Subject } from 'rxjs';
import { Lwm2mConfigurationService } from '@c8y/ngx-components/protocol-lwm2m/services';
import * as i0 from "@angular/core";
export declare abstract class Lwm2mFormWrapperBase<T> implements OnInit, OnDestroy {
    protected service: Lwm2mConfigurationService<T>;
    private alertService;
    protected abstract endpoint: LWM2MEndpoint;
    protected destroy$: Subject<void>;
    model: T;
    form: FormGroup<{}>;
    fields: FormlyFieldConfig[];
    buttons: {};
    options: FormlyFormOptions;
    constructor(service: Lwm2mConfigurationService<T>);
    abstract createForm(): FormlyFieldConfig[];
    ngOnInit(): void;
    ngOnDestroy(): void;
    save(): void;
    cancel: () => void;
    static ɵfac: i0.ɵɵFactoryDeclaration<Lwm2mFormWrapperBase<any>, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<Lwm2mFormWrapperBase<any>, "c8y-lwm2m-form-wrapper-base", never, {}, {}, never, never, true, never>;
}
//# sourceMappingURL=form-wrapper-base.component.d.ts.map