import * as pulumi from "@pulumi/pulumi" ; export interface TopicConstructor { param name param opts new < T > ( name , opts ? ) : Topic < T > ; } export let Topic ; param T export interface Topic < T > extends Stream < T > { param item publish : ( item : T ) => Promise < void > ; param name param handler subscribe ( name , handler ) : void ; } param T export interface Stream < T > { param name param handler subscribe ( name , handler ) : void ; }