import type * as activities from '../activities/approval.activities';
type ProcessModel = activities.ProcessModel;
type ProcessSettings = activities.ProcessSettings;
interface ApprovalHistoryItem {
    nodeId: string;
    nodeName: string;
    action: string;
    operatorId: string;
    comment?: string;
    actionTime: number;
}
type InstanceStatus = 'RUNNING' | 'SUSPENDED' | 'APPROVED' | 'REJECTED' | 'WITHDRAWN' | 'TERMINATED' | 'FAILED';
export declare const approveSignal: import("@temporalio/workflow").SignalDefinition<[{
    taskId: string;
    operatorId: string;
    comment?: string;
    formData?: any;
    attachments?: any;
    isAdminAction?: boolean;
}], string>;
export declare const rejectSignal: import("@temporalio/workflow").SignalDefinition<[{
    taskId: string;
    operatorId: string;
    comment: string;
    rejectCode?: string;
    attachments?: any;
    isAdminAction?: boolean;
}], string>;
export declare const returnSignal: import("@temporalio/workflow").SignalDefinition<[{
    taskId: string;
    operatorId: string;
    targetNodeId: string;
    comment: string;
}], string>;
export declare const forwardSignal: import("@temporalio/workflow").SignalDefinition<[{
    taskId: string;
    operatorId: string;
    toUserId: string;
    comment?: string;
}], string>;
export declare const withdrawSignal: import("@temporalio/workflow").SignalDefinition<[{
    operatorId: string;
    reason?: string;
}], string>;
export declare const approverWithdrawSignal: import("@temporalio/workflow").SignalDefinition<[{
    taskId: string;
    operatorId: string;
    reason: string;
}], string>;
export declare const addSignSignal: import("@temporalio/workflow").SignalDefinition<[{
    taskId: string;
    operatorId: string;
    userIds: string[];
    type: "BEFORE" | "AFTER" | "PARALLEL";
    comment?: string;
}], string>;
export declare const claimSignal: import("@temporalio/workflow").SignalDefinition<[{
    taskId: string;
    operatorId: string;
}], string>;
export declare const remindSignal: import("@temporalio/workflow").SignalDefinition<[{
    taskId: string;
    operatorId: string;
    message?: string;
}], string>;
export declare const adminTerminateSignal: import("@temporalio/workflow").SignalDefinition<[{
    operatorId: string;
    reason: string;
}], string>;
export declare const executeSignal: import("@temporalio/workflow").SignalDefinition<[{
    taskId: string;
    operatorId: string;
    formData: any;
    comment?: string;
    attachments?: any;
}], string>;
export declare const resumeWithApproversSignal: import("@temporalio/workflow").SignalDefinition<[{
    approverIds: string[];
    resolvedBy: string;
}], string>;
export declare const statusQuery: import("@temporalio/workflow").QueryDefinition<InstanceStatus, [], string>;
export declare const currentNodeQuery: import("@temporalio/workflow").QueryDefinition<string | null, [], string>;
export declare const historyQuery: import("@temporalio/workflow").QueryDefinition<ApprovalHistoryItem[], [], string>;
export declare const pendingTasksQuery: import("@temporalio/workflow").QueryDefinition<string[], [], string>;
export interface ApprovalWorkflowInput {
    instanceId: string;
    processModel: ProcessModel;
    settings: ProcessSettings;
    variables: Record<string, any>;
    initiatorId: string;
    businessType: string;
    businessId: string;
    businessKey?: string;
    callbackUrl?: string;
}
export declare function genericApprovalWorkflow(input: ApprovalWorkflowInput): Promise<void>;
export {};
