import { OnInit } from '@angular/core';
import { SchemaFunctionProperty, SchemaFunctionDefinition, SchemaFunction } from '@lowcodeunit/core';
import { MatDialogRef, MatDialog } from '@angular/material';
export declare class SchemaFunctionsDialogComponent implements OnInit {
    dialog: MatDialog;
    data: any;
    dialogRefFunctions: MatDialogRef<SchemaFunctionsDialogComponent>;
    protected maxFunctions: number;
    AddFunctionVisible: boolean;
    AvailableSchemaProperties: SchemaFunctionProperty[];
    AvailableSchemaFunctions: SchemaFunctionDefinition[];
    Data: any;
    ExpectedReturnType: string;
    MappingFunctions: SchemaFunction[];
    AuditFunctionsRecursive: Function;
    AuditFunctions: Function;
    IsMappingFunctionNeeded: Function;
    IsJoinFunctionNeeded: Function;
    IsJoinPresent: Function;
    IsGroupNeeded: Function;
    Node: any;
    ReturnRefactored: boolean;
    SchemaFunctions: SchemaFunction[];
    SchemaFunctionsReturnSource: string;
    SchemaFunctionsReturnSourceID: string;
    SchemaFunctionsReturnValue: string;
    SchemaFunctionsReturnValueType: string;
    SelectedReturnFunction: SchemaFunctionProperty;
    ShowAddSchemaFunction: boolean;
    Type: string;
    constructor(dialog: MatDialog, data: any, dialogRefFunctions: MatDialogRef<SchemaFunctionsDialogComponent>);
    ngOnInit(): void;
    AddNewFunction(ev: any): void;
    EditFunction(id: string): void;
    Done(): void;
    GetFilteredAvailableSchemaProperties(): any[];
    RemoveFunction(id: string): void;
    ReturnFunctionChanged(): void;
    SortSuccess(): void;
    protected addExistingFunctionsAsProperties(): void;
    protected handleEnterPress(): void;
    protected showFunctionEditor(functionId: string): void;
}
