import { RequestModelField, RuntimeContext, RuntimeServerAction, SubmitValue } from '@oinone/kunlun-engine';
import { HttpClientError } from '@oinone/kunlun-request';
import { CallChaining } from '@oinone/kunlun-vue-ui-antd';
import { WidgetSubjection } from '@oinone/kunlun-vue-widget';
import { FormValidateResult } from '../../basic';
import { ClickResult, PopupSubmitFunction } from '../../typing';
import { ActionWidget } from '../component';
export declare class ServerActionWidget extends ActionWidget<RuntimeServerAction> {
    protected updateActionName: string;
    protected updateOneWithRelationName: string;
    protected onSubmit: PopupSubmitFunction | undefined;
    protected reloadFormData$: WidgetSubjection<boolean>;
    protected get updateData(): boolean;
    protected get submitData(): boolean;
    protected formValidateCallChaining: CallChaining<FormValidateResult[]> | undefined;
    protected clickAction(): Promise<ClickResult>;
    protected formValidateProcess(e: HttpClientError): void;
    protected convertFormValidateResults(e: HttpClientError): FormValidateResult[];
    protected notifyValidateResults(e: HttpClientError): void;
    protected clickActionAfter(result: ClickResult): Promise<ClickResult>;
    protected clickActionAfterRefreshData(result: ClickResult, refreshParent?: boolean): Promise<ClickResult>;
    protected executeRefreshRoot(): void;
    protected findRefreshRootRuntimeContext(): RuntimeContext | undefined;
    protected executeRefreshData(refreshParent: boolean): void;
    protected executeSubmitData(result: ClickResult): Promise<ClickResult>;
    protected historyBack(): void;
    protected usingDiffUpdate(parameters: SubmitValue): boolean;
    protected executeAction(action: RuntimeServerAction, submitValue: SubmitValue): Promise<ClickResult>;
    protected executeRelationUpdate<T>(requestFields: RequestModelField[], submitValue: SubmitValue): Promise<T>;
}
