import { AfterViewInit, ElementRef, Injector, OnDestroy, OnInit } from '@angular/core';
import type { FormBuilderInputItem } from './form-builder.types';
import { FormBuilder } from './form-builder';
import { ScreenDetectorService } from '@al00x/screen-detector';
import * as i0 from "@angular/core";
export declare class CacFormBuilderComponent<T, U = T> implements OnInit, AfterViewInit, OnDestroy {
    injector: Injector;
    screenDetector: ScreenDetectorService;
    wrapperEl: ElementRef<HTMLDivElement>;
    tabIndexEntryEl: ElementRef<HTMLInputElement>;
    _options: FormBuilder<T, U>;
    focusOnInit: boolean;
    protected inputItems: import("@angular/core").WritableSignal<FormBuilderInputItem<T>[]>;
    private subs;
    ngOnInit(): void;
    ngAfterViewInit(): void;
    ngOnDestroy(): void;
    getValues(): U | null;
    reset(): void;
    focus(): void;
    focusTabIndexEntry(): void;
    scrollToErrored(): void;
    private updateInputs;
    private bindToSub;
    trackBy: (index: number, item: FormBuilderInputItem<any>) => string;
    static ɵfac: i0.ɵɵFactoryDeclaration<CacFormBuilderComponent<any, any>, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<CacFormBuilderComponent<any, any>, "cac-form-builder", never, { "_options": { "alias": "options"; "required": false; }; "focusOnInit": { "alias": "focusOnInit"; "required": false; }; }, {}, never, never, true, never>;
}
