import { SdSearch } from '@sd-angular/core/forms';
import { ISdWorkflowConfiguration } from '../configurations';
import { SdFormGenericArgs, SdFormGenericDefinitionHtml, SdFormGenericDefinitionSelection, SdFormGenericSelectionItem } from '../models';
import * as i0 from "@angular/core";
export declare class FormGenericService {
    #private;
    private readonly configuration;
    constructor(configuration: ISdWorkflowConfiguration);
    get selections(): (() => Promise<SdFormGenericDefinitionSelection[]>) | SdFormGenericDefinitionSelection<any, any>[] | (() => SdFormGenericDefinitionSelection<any, any>[]);
    get tables(): import("@sd-angular/core/components/workflow").SdFormGenericDefinitionTable<any>[];
    getSelection: (valuesKey: string | undefined | null) => Promise<SdFormGenericDefinitionSelection | undefined>;
    selection: {
        definitions: () => Promise<SdFormGenericDefinitionSelection[]>;
        getDefinition: (valuesKey: string | undefined | null) => Promise<SdFormGenericDefinitionSelection | undefined>;
        items: (valuesKey: string | undefined | null, args: SdFormGenericArgs) => Promise<SdFormGenericSelectionItem[] | SdSearch<SdFormGenericSelectionItem>>;
        variables: {
            detail: (valuesKey: string, values: string | number | string[] | number[], args: SdFormGenericArgs) => Promise<any>;
        };
    };
    html: {
        definitions: () => Promise<SdFormGenericDefinitionHtml[]>;
        getContent: (template: string, query?: Record<string, any>) => Promise<string>;
    };
    static ɵfac: i0.ɵɵFactoryDeclaration<FormGenericService, [{ optional: true; }]>;
    static ɵprov: i0.ɵɵInjectableDeclaration<FormGenericService>;
}
