import { EventMessageInternal } from './BaseMessage';
/**
 * Encapsulates the message that is sent when when an ExternalTask was created.
 */
export type ExternalTaskCreatedMessageInternal = EventMessageInternal & {
    externalTaskId: string;
    topic: string;
    isSingleTry: boolean;
};
/**
 * Encapsulates the message that is sent when when a batch of ExternalTasks was locked by a worker.
 */
export type ExternalTaskLockedMessageInternal = ExternalTaskCreatedMessageInternal & {
    workerId: string;
    lockExpirationTime: Date;
};
/**
 * Encapsulates the message that is sent when when an ExternalTask lock expires.
 * Only sent for Multi-Try External Tasks, because SingleTry External Tasks will emit an ExternalTaskExpired message in such cases.
 */
export type ExternalTaskUnlockedMessageInternal = ExternalTaskCreatedMessageInternal & {
    externalTaskId: string;
    topic: string;
};
/**
 * Encapsulates the message that is sent when when an SingleTry ExternalTask expires.
 */
export type ExternalTaskExpiredMessageInternal = ExternalTaskCreatedMessageInternal & {
    externalTaskId: string;
    topic: string;
};
