import { controllerResponse } from "../../utilities";
import { MRequestMiddelware } from "../../common-types/common";
declare class MWorkflowInitializePayload implements MRequestMiddelware {
    workflowId?: string;
    wfrg_id?: string;
    requestTable?: string;
    requestId?: string;
    entityId?: string;
    requestData?: Record<string, any>;
    initiatedBy?: string;
    requestedByUser?: string;
    constructor(init: MWorkflowInitializePayload);
    Validate?(): any;
}
declare class MWorkflowActionPayload implements MRequestMiddelware {
    workflowId?: string;
    wfrg_id?: string;
    requestTable?: string;
    requestId?: string;
    entityId?: string;
    stepId?: string;
    wfstp_id?: string;
    stepNumber?: number;
    action?: 'approve' | 'reject' | 'return' | 'request-changes' | 'edit';
    actionType?: 'approve' | 'reject' | 'request-changes' | 'edit';
    comments?: string;
    actionBy?: string;
    actionByUser?: string;
    editedData?: Record<string, any>;
    editedValues?: Record<string, any>;
    attachments?: string[];
    constructor(init: MWorkflowActionPayload);
    Validate?(): any;
}
declare class MWorkflowStatusPayload implements MRequestMiddelware {
    workflowId?: string;
    wfrg_id?: string;
    entityId?: string;
    requestId?: string;
    requestTable?: string;
    constructor(init: MWorkflowStatusPayload);
    Validate?(): any;
}
declare class MWorkflowStatusBatchPayload implements MRequestMiddelware {
    entityIds?: string[];
    requestIds?: string[];
    requestTable?: string;
    constructor(init: MWorkflowStatusBatchPayload);
    Validate?(): any;
}
declare class MWorkflowCanApprovePayload implements MRequestMiddelware {
    workflowId?: string;
    wfrg_id?: string;
    requestTable?: string;
    requestId?: string;
    entityId?: string;
    stepNumber?: number;
    userId?: string;
    actionBy?: string;
    constructor(init: MWorkflowCanApprovePayload);
    Validate?(): any;
}
declare class MWorkflowHistoryPayload implements MRequestMiddelware {
    workflowId?: string;
    wfrg_id?: string;
    requestTable?: string;
    entityId?: string;
    requestId?: string;
    maskApprovers?: boolean;
    constructor(init: MWorkflowHistoryPayload);
    Validate?(): any;
}
interface workflowEngineControllerResponse extends controllerResponse {
    data?: any | null;
}
interface workflowStatusControllerResponse extends controllerResponse {
    data?: any | null;
}
export { MWorkflowInitializePayload, MWorkflowActionPayload, MWorkflowStatusPayload, MWorkflowStatusBatchPayload, MWorkflowCanApprovePayload, MWorkflowHistoryPayload, workflowEngineControllerResponse, workflowStatusControllerResponse };
