You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
77 lines
3.0 KiB
77 lines
3.0 KiB
/* tslint:disable:interface-name */ |
|
|
|
declare namespace Paho { |
|
namespace MQTT { |
|
interface MQTTError { errorCode: string; errorMessage: string; } |
|
interface WithInvocationContext { invocationContext: object; } |
|
interface ErrorWithInvocationContext extends MQTTError, WithInvocationContext {} |
|
interface OnSubscribeSuccessParams extends WithInvocationContext { grantedQos: number; } |
|
type OnConnectionLostHandler = (error: MQTTError) => void; |
|
type OnMessageHandler = (message: Message) => void; |
|
interface ConnectionOptions { |
|
timeout?: number; |
|
userName?: string; |
|
password?: string; |
|
willMessage?: Message; |
|
keepAliveInterval?: number; |
|
cleanSession?: boolean; |
|
useSSL?: boolean; |
|
invocationContext?: object; |
|
onSuccess?: (o: WithInvocationContext) => void; |
|
mqttVersion?: number; |
|
onFailure?: (e: ErrorWithInvocationContext) => void; |
|
hosts?: string[]; |
|
ports?: number[]; |
|
} |
|
interface SubscribeOptions { |
|
qos?: number; |
|
invocationContext?: object; |
|
onSuccess?: (o: OnSubscribeSuccessParams) => void; |
|
onFailure?: (e: ErrorWithInvocationContext) => void; |
|
timeout?: number; |
|
} |
|
interface UnsubscribeOptions { |
|
invocationContext?: object; |
|
onSuccess?: (o: WithInvocationContext) => void; |
|
onFailure?: (e: ErrorWithInvocationContext) => void; |
|
timeout?: number; |
|
} |
|
class Client { |
|
public readonly clientId: string; |
|
public readonly host: string; |
|
public readonly path: string; |
|
public readonly port: number; |
|
|
|
public onConnectionLost: OnConnectionLostHandler; |
|
public onMessageArrived: OnMessageHandler; |
|
public onMessageDelivered: OnMessageHandler; |
|
|
|
// tslint:disable unified-signatures |
|
constructor(host: string, port: number, path: string, clientId: string); |
|
constructor(host: string, port: number, clientId: string); |
|
constructor(hostUri: string, clientId: string); |
|
|
|
public connect(connectionOptions?: ConnectionOptions); |
|
public disconnect(); |
|
|
|
public getTraceLog(): object[]; |
|
public startTrace(); |
|
public stopTrace(); |
|
|
|
public send(message: Message); |
|
public subscribe(filter: string, subcribeOptions?: SubscribeOptions); |
|
public unsubscribe(filter: string, unsubcribeOptions?: UnsubscribeOptions); |
|
} |
|
|
|
class Message { |
|
public destinationName: string; |
|
public readonly duplicate: boolean; |
|
public readonly payloadBytes: ArrayBuffer; |
|
public readonly payloadString: string; |
|
public qos: number; |
|
public retained: boolean; |
|
|
|
constructor(payload: string | ArrayBuffer); |
|
} |
|
} |
|
}
|
|
|