@types/amqplib
Version:
TypeScript definitions for amqplib
146 lines (126 loc) • 4.61 kB
TypeScript
import events = require("events");
import { Message, Options, Replies, ServerProperties } from "./properties";
export * from "./properties";
export interface Connection extends events.EventEmitter {
close(callback?: (err: any) => void): void;
createChannel(callback: (err: any, channel: Channel) => void): void;
createConfirmChannel(callback: (err: any, confirmChannel: ConfirmChannel) => void): void;
connection: {
serverProperties: ServerProperties;
};
updateSecret(newSecret: Buffer, reason: string, callback?: (err: any) => void): void;
}
export interface Channel extends events.EventEmitter {
connection: Connection;
close(callback: (err: any) => void): void;
assertQueue(
queue?: string,
options?: Options.AssertQueue,
callback?: (err: any, ok: Replies.AssertQueue) => void,
): void;
checkQueue(queue: string, callback?: (err: any, ok: Replies.AssertQueue) => void): void;
deleteQueue(
queue: string,
options?: Options.DeleteQueue,
callback?: (err: any, ok: Replies.DeleteQueue) => void,
): void;
purgeQueue(queue: string, callback?: (err: any, ok: Replies.PurgeQueue) => void): void;
bindQueue(
queue: string,
source: string,
pattern: string,
args?: any,
callback?: (err: any, ok: Replies.Empty) => void,
): void;
unbindQueue(
queue: string,
source: string,
pattern: string,
args?: any,
callback?: (err: any, ok: Replies.Empty) => void,
): void;
assertExchange(
exchange: string,
type: string,
options?: Options.AssertExchange,
callback?: (err: any, ok: Replies.AssertExchange) => void,
): void;
checkExchange(exchange: string, callback?: (err: any, ok: Replies.Empty) => void): void;
deleteExchange(
exchange: string,
options?: Options.DeleteExchange,
callback?: (err: any, ok: Replies.Empty) => void,
): void;
bindExchange(
destination: string,
source: string,
pattern: string,
args?: any,
callback?: (err: any, ok: Replies.Empty) => void,
): void;
unbindExchange(
destination: string,
source: string,
pattern: string,
args?: any,
callback?: (err: any, ok: Replies.Empty) => void,
): void;
publish(exchange: string, routingKey: string, content: Buffer, options?: Options.Publish): boolean;
sendToQueue(queue: string, content: Buffer, options?: Options.Publish): boolean;
consume(
queue: string,
onMessage: (msg: Message | null) => void,
options?: Options.Consume,
callback?: (err: any, ok: Replies.Consume) => void,
): void;
cancel(consumerTag: string, callback?: (err: any, ok: Replies.Empty) => void): void;
get(queue: string, options?: Options.Get, callback?: (err: any, ok: Message | false) => void): void;
ack(message: Message, allUpTo?: boolean): void;
ackAll(): void;
nack(message: Message, allUpTo?: boolean, requeue?: boolean): void;
nackAll(requeue?: boolean): void;
reject(message: Message, requeue?: boolean): void;
prefetch(count: number, global?: boolean): void;
recover(callback?: (err: any, ok: Replies.Empty) => void): void;
}
export interface ConfirmChannel extends Channel {
publish(
exchange: string,
routingKey: string,
content: Buffer,
options?: Options.Publish,
callback?: (err: any, ok: Replies.Empty) => void,
): boolean;
sendToQueue(
queue: string,
content: Buffer,
options?: Options.Publish,
callback?: (err: any, ok: Replies.Empty) => void,
): boolean;
waitForConfirms(callback?: (err: any) => void): void;
}
export const credentials: {
amqplain(username: string, password: string): {
mechanism: string;
response(): Buffer;
username: string;
password: string;
};
external(): {
mechanism: string;
response(): Buffer;
};
plain(username: string, password: string): {
mechanism: string;
response(): Buffer;
username: string;
password: string;
};
};
export function connect(callback: (err: any, connection: Connection) => void): void;
export function connect(url: string | Options.Connect, callback: (err: any, connection: Connection) => void): void;
export function connect(
url: string | Options.Connect,
socketOptions: any,
callback: (err: any, connection: Connection) => void,
): void;