export declare enum EQueueOperationalState {
    ACTIVE = 0,
    PAUSED = 1,
    STOPPED = 2,
    LOCKED = 3
}
export declare enum EQueueType {
    LIFO_QUEUE = 0,
    FIFO_QUEUE = 1,
    PRIORITY_QUEUE = 2
}
export interface IQueueParams {
    name: string;
    ns: string;
}
export type TQueueExtendedParams = string | IQueueParams | IQueueParsedParams;
export interface IQueueParsedParams {
    queueParams: IQueueParams;
    groupId: string | null;
}
export interface IQueueRateLimit {
    limit: number;
    interval: number;
}
export declare enum EQueueDeliveryModel {
    POINT_TO_POINT = 0,
    PUB_SUB = 1
}
export interface IQueueProperties {
    deliveryModel: EQueueDeliveryModel;
    queueType: EQueueType;
    rateLimit: IQueueRateLimit | null;
    messagesCount: number;
    scheduledMessagesCount: number;
    pendingMessagesCount: number;
    processingMessagesCount: number;
    acknowledgedMessagesCount: number;
    deadLetteredMessagesCount: number;
    delayedMessagesCount: number;
    requeuedMessagesCount: number;
    operationalState: EQueueOperationalState;
    lastStateChangeAt: number | null;
    lockId: string | null;
}
export declare enum EQueueProperty {
    QUEUE_TYPE = 0,
    RATE_LIMIT = 1,
    MESSAGES_COUNT = 2,
    DELIVERY_MODEL = 3,
    SCHEDULED_MESSAGES_COUNT = 4,
    PENDING_MESSAGES_COUNT = 5,
    PROCESSING_MESSAGES_COUNT = 6,
    ACKNOWLEDGED_MESSAGES_COUNT = 7,
    DEAD_LETTERED_MESSAGES_COUNT = 8,
    DELAYED_MESSAGES_COUNT = 9,
    REQUEUED_MESSAGES_COUNT = 10,
    OPERATIONAL_STATE = 11,
    LAST_STATE_CHANGE_AT = 12,
    LOCK_ID = 13
}
//# sourceMappingURL=queue.d.ts.map