diff --git a/postal/postal.d.ts b/postal/postal.d.ts index e1bad48cce..a23e14d873 100644 --- a/postal/postal.d.ts +++ b/postal/postal.d.ts @@ -15,36 +15,36 @@ interface IResolver { purge(options?: {topic?: string, binding?: string, compact?: boolean}): void; } -interface ICallback { - (data: any, envelope: IEnvelope): void +interface ICallback { + (data: T, envelope: IEnvelope): void } -interface ISubscriptionDefinition { +interface ISubscriptionDefinition { channel: string; topic: string; - callback: ICallback; + callback: ICallback; // after and before lack documentation - constraint(predicateFn: (data: any, envelope: IEnvelope) => boolean): ISubscriptionDefinition; - constraints(predicateFns: ((data: any, envelope: IEnvelope) => boolean)[]): ISubscriptionDefinition; - context(theContext: any): ISubscriptionDefinition; - debounce(interval: number): ISubscriptionDefinition; - defer(): ISubscriptionDefinition; - delay(waitTime: number): ISubscriptionDefinition; - disposeAfter(maxCalls: number): ISubscriptionDefinition; - distinct(): ISubscriptionDefinition; - distinctUntilChanged(): ISubscriptionDefinition; - logError(): ISubscriptionDefinition; - once(): ISubscriptionDefinition; - throttle(interval: number): ISubscriptionDefinition; - subscribe(callback: ICallback): ISubscriptionDefinition; + constraint(predicateFn: (data: T, envelope: IEnvelope) => boolean): ISubscriptionDefinition; + constraints(predicateFns: ((data: T, envelope: IEnvelope) => boolean)[]): ISubscriptionDefinition; + context(theContext: any): ISubscriptionDefinition; + debounce(interval: number): ISubscriptionDefinition; + defer(): ISubscriptionDefinition; + delay(waitTime: number): ISubscriptionDefinition; + disposeAfter(maxCalls: number): ISubscriptionDefinition; + distinct(): ISubscriptionDefinition; + distinctUntilChanged(): ISubscriptionDefinition; + logError(): ISubscriptionDefinition; + once(): ISubscriptionDefinition; + throttle(interval: number): ISubscriptionDefinition; + subscribe(callback: ICallback): ISubscriptionDefinition; unsubscribe(): void; } -interface IEnvelope { +interface IEnvelope { topic: string; - data?: any; + data?: T; /*Uses DEFAULT_CHANNEL if no channel is provided*/ channel?: string; @@ -53,10 +53,10 @@ interface IEnvelope { } -interface IChannelDefinition { - subscribe(topic: string, callback: ICallback): ISubscriptionDefinition; +interface IChannelDefinition { + subscribe(topic: string, callback: ICallback): ISubscriptionDefinition; - publish(topic: string, data?: any): void; + publish(topic: string, data?: T): void; channel: string; } @@ -73,24 +73,24 @@ interface IDestinationArg { interface IPostal { subscriptions: {}; - wiretaps: ICallback[]; + wiretaps: ICallback[]; - addWireTap(callback: ICallback): () => void; + addWireTap(callback: ICallback): () => void; - channel(name?: string): IChannelDefinition; + channel(name?: string): IChannelDefinition; - getSubscribersFor(): ISubscriptionDefinition[]; - getSubscribersFor(options: {channel?: string, topic?: string, context?: any}): ISubscriptionDefinition[]; - getSubscribersFor(predicateFn: (sub: ISubscriptionDefinition) => boolean): ISubscriptionDefinition[]; + getSubscribersFor(): ISubscriptionDefinition[]; + getSubscribersFor(options: {channel?: string, topic?: string, context?: any}): ISubscriptionDefinition[]; + getSubscribersFor(predicateFn: (sub: ISubscriptionDefinition) => boolean): ISubscriptionDefinition[]; linkChannels(source: ISourceArg | ISourceArg[], destination: IDestinationArg | IDestinationArg[]): void; - publish(envelope: IEnvelope): void; + publish(envelope: IEnvelope): void; reset(): void; - subscribe(options: {channel?: string, topic: string, callback: ICallback}): ISubscriptionDefinition; - unsubscribe(sub: ISubscriptionDefinition): void; + subscribe(options: {channel?: string, topic: string, callback: ICallback}): ISubscriptionDefinition; + unsubscribe(sub: ISubscriptionDefinition): void; unsubscribeFor(): void; unsubscribeFor(options: {channel?: string, topic?: string, context?: any}): void;