import { Type } from '@angular/core';
import { Widget } from './widget';
import { SubformComponent } from '../../../sculptor-lib/widgets/subform/subform.component';
import { PropertyPanelFieldMetadata } from '../common/property-panel-field';
declare type subFormValue = Type<string | number>;
export declare class SubForm extends Widget {
    subType: string;
    helpText: string;
    entryMode: string;
    component: Type<SubformComponent>;
    value: subFormValue;
    name: string;
    markup: Array<Widget>;
    pid: string;
    constructor(field?: SubForm);
    /**
     * get widget value
     *
     * @returns
     */
    getWidgetValue(): any;
    /**
     * Set widget Value
     *
     * @param value
     */
    setWidgetValue(value: any): void;
    newSubForm(): void;
    /**function to create report object with existing values
    *
    *@param Report
    *
    */
    subForm(field?: SubForm): void;
    /**
     * this will return serialize of widget
     */
    getWidgetSerializedValue(): string;
    static getPropertyPanelFieldMetadata(target: any, key: string): PropertyPanelFieldMetadata;
    getPropertyPanelFieldUIProperties(): any;
}
export {};
