import { IMessageStateTransferable } from './types/index.js';
export declare class MessageState {
    protected uuid: string;
    protected publishedAt: number | null;
    protected processingStartedAt: number | null;
    protected lastProcessedAt: number | null;
    protected requeuedAt: number | null;
    protected requeueCount: number;
    protected lastRequeuedAt: number | null;
    protected deadLetteredAt: number | null;
    protected acknowledgedAt: number | null;
    protected unacknowledgedAt: number | null;
    protected lastUnacknowledgedAt: number | null;
    protected scheduledAt: number | null;
    protected lastScheduledAt: number | null;
    protected lastRetriedAttemptAt: number | null;
    protected scheduledCronFired: boolean;
    protected attempts: number;
    protected scheduledRepeatCount: number;
    protected expired: boolean;
    protected effectiveScheduledDelay: number;
    protected scheduledTimes: number;
    protected scheduledMessageParentId: string | null;
    protected requeuedMessageParentId: string | null;
    constructor();
    static fromJSON(state: IMessageStateTransferable): MessageState;
    setId(id: string): MessageState;
    getId(): string;
    setPublishedAt(timestamp: number): MessageState;
    getPublishedAt(): number | null;
    setProcessingStartedAt(timestamp: number): MessageState;
    getProcessingStartedAt(): number | null;
    setLastProcessedAt(timestamp: number): MessageState;
    getLastProcessedAt(): number | null;
    setRequeuedAt(timestamp: number): MessageState;
    getRequeuedAt(): number | null;
    setRequeueCount(count: number): MessageState;
    getRequeueCount(): number;
    incrRequeueCount(): MessageState;
    setLastRequeuedAt(timestamp: number): MessageState;
    getLastRequeuedAt(): number | null;
    setDeadLetteredAt(timestamp: number): MessageState;
    getDeadLetteredAt(): number | null;
    setAcknowledgedAt(timestamp: number): MessageState;
    getAcknowledgedAt(): number | null;
    setUnacknowledgedAt(timestamp: number): MessageState;
    getUnacknowledgedAt(): number | null;
    setLastUnacknowledgedAt(timestamp: number | null): MessageState;
    getLastUnacknowledgedAt(): number | null;
    setScheduledAt(timestamp: number): MessageState;
    getScheduledAt(): number | null;
    setLastScheduledAt(timestamp: number): MessageState;
    getLastScheduledAt(): number | null;
    setLastRetriedAttemptAt(timestamp: number): this;
    getLastRetriedAttemptAt(): number | null;
    setScheduledCronFired(fired: boolean): MessageState;
    isScheduledCronFired(): boolean;
    setAttempts(attempts: number): MessageState;
    getAttempts(): number;
    setScheduledRepeatCount(count: number): this;
    getScheduledRepeatCount(): number;
    incrScheduledRepeatCount(): number;
    resetScheduledRepeatCount(): MessageState;
    getSetExpired(ttl: number, createdAt: number): boolean;
    setExpired(expired: boolean): MessageState;
    getExpired(): boolean;
    setEffectiveScheduledDelay(delay: number): MessageState;
    getEffectiveScheduledDelay(): number;
    getSetEffectiveScheduledDelay(): number;
    hasDelay(): boolean;
    setScheduledTimes(count: number): MessageState;
    getScheduledTimes(): number;
    incrScheduledTimes(count?: number): MessageState;
    setScheduledMessageParentId(messageId: string): MessageState;
    getScheduledMessageParentId(): string | null;
    setRequeuedMessageParentId(messageId: string): MessageState;
    getRequeuedMessageParentId(): string | null;
    reset(): MessageState;
    toJSON(): IMessageStateTransferable;
    getValues(): [
        IMessageStateTransferable['uuid'],
        IMessageStateTransferable['publishedAt'],
        IMessageStateTransferable['processingStartedAt'],
        IMessageStateTransferable['requeuedAt'],
        IMessageStateTransferable['requeueCount'],
        IMessageStateTransferable['lastRequeuedAt'],
        IMessageStateTransferable['deadLetteredAt'],
        IMessageStateTransferable['acknowledgedAt'],
        IMessageStateTransferable['unacknowledgedAt'],
        IMessageStateTransferable['lastUnacknowledgedAt'],
        IMessageStateTransferable['scheduledAt'],
        IMessageStateTransferable['lastScheduledAt'],
        IMessageStateTransferable['lastRetriedAttemptAt'],
        IMessageStateTransferable['scheduledCronFired'],
        IMessageStateTransferable['attempts'],
        IMessageStateTransferable['scheduledRepeatCount'],
        IMessageStateTransferable['expired'],
        IMessageStateTransferable['effectiveScheduledDelay'],
        IMessageStateTransferable['scheduledTimes'],
        IMessageStateTransferable['scheduledMessageParentId'],
        IMessageStateTransferable['requeuedMessageParentId'],
        IMessageStateTransferable['lastProcessedAt']
    ];
}
//# sourceMappingURL=message-state.d.ts.map