UNPKG

@azure/web-pubsub

Version:
249 lines 15.8 kB
import { WebPubSub } from "../operationsInterfaces/index.js"; import * as coreRestPipeline from "@azure/core-rest-pipeline"; import { GeneratedClient } from "../generatedClient.js"; import { AddToGroupsRequest, WebPubSubAddConnectionsToGroupsOptionalParams, WebPubSubCloseAllConnectionsOptionalParams, WebPubSubGenerateClientTokenOptionalParams, WebPubSubGenerateClientTokenResponse, RemoveFromGroupsRequest, WebPubSubRemoveConnectionsFromGroupsOptionalParams, ContentType, WebPubSubSendToAll$binaryOptionalParams, WebPubSubSendToAll$textOptionalParams, WebPubSubCloseConnectionOptionalParams, WebPubSubConnectionExistsOptionalParams, WebPubSubSendToConnection$binaryOptionalParams, WebPubSubSendToConnection$textOptionalParams, WebPubSubRemoveConnectionFromAllGroupsOptionalParams, WebPubSubGroupExistsOptionalParams, WebPubSubCloseGroupConnectionsOptionalParams, WebPubSubSendToGroup$binaryOptionalParams, WebPubSubSendToGroup$textOptionalParams, WebPubSubRemoveConnectionFromGroupOptionalParams, WebPubSubAddConnectionToGroupOptionalParams, WebPubSubPermission, WebPubSubRevokePermissionOptionalParams, WebPubSubCheckPermissionOptionalParams, WebPubSubGrantPermissionOptionalParams, WebPubSubUserExistsOptionalParams, WebPubSubCloseUserConnectionsOptionalParams, WebPubSubSendToUser$binaryOptionalParams, WebPubSubSendToUser$textOptionalParams, WebPubSubRemoveUserFromAllGroupsOptionalParams, WebPubSubRemoveUserFromGroupOptionalParams, WebPubSubAddUserToGroupOptionalParams } from "../models/index.js"; /** Class containing WebPubSub operations. */ export declare class WebPubSubImpl implements WebPubSub { private readonly client; /** * Initialize a new instance of the class WebPubSub class. * @param client Reference to the service client */ constructor(client: GeneratedClient); /** * Add filtered connections to multiple groups. * @param hub Target hub name, which should start with alphabetic characters and only contain * alpha-numeric characters or underscore. * @param groupsToAdd Target groups and connection filter. * @param options The options parameters. */ addConnectionsToGroups(hub: string, groupsToAdd: AddToGroupsRequest, options?: WebPubSubAddConnectionsToGroupsOptionalParams): Promise<void>; /** * Close the connections in the hub. * @param hub Target hub name, which should start with alphabetic characters and only contain * alpha-numeric characters or underscore. * @param options The options parameters. */ closeAllConnections(hub: string, options?: WebPubSubCloseAllConnectionsOptionalParams): Promise<void>; /** * Generate token for the client to connect Azure Web PubSub service. * @param hub Target hub name, which should start with alphabetic characters and only contain * alpha-numeric characters or underscore. * @param options The options parameters. */ generateClientToken(hub: string, options?: WebPubSubGenerateClientTokenOptionalParams): Promise<WebPubSubGenerateClientTokenResponse>; /** * Remove filtered connections from multiple groups. * @param hub Target hub name, which should start with alphabetic characters and only contain * alpha-numeric characters or underscore. * @param groupsToRemove Target groups and connection filter. * @param options The options parameters. */ removeConnectionsFromGroups(hub: string, groupsToRemove: RemoveFromGroupsRequest, options?: WebPubSubRemoveConnectionsFromGroupsOptionalParams): Promise<void>; /** * Broadcast content inside request body to all the connected client connections. * @param hub Target hub name, which should start with alphabetic characters and only contain * alpha-numeric characters or underscore. * @param contentType Upload file type * @param message The payload body. * @param options The options parameters. */ sendToAll(hub: string, contentType: ContentType, message: coreRestPipeline.RequestBodyType, options?: WebPubSubSendToAll$binaryOptionalParams): Promise<void>; /** * Broadcast content inside request body to all the connected client connections. * @param hub Target hub name, which should start with alphabetic characters and only contain * alpha-numeric characters or underscore. * @param contentType Upload file type * @param message The payload body. * @param options The options parameters. */ sendToAll(hub: string, contentType: "text/plain", message: string, options?: WebPubSubSendToAll$textOptionalParams): Promise<void>; /** * Close the client connection. * @param hub Target hub name, which should start with alphabetic characters and only contain * alpha-numeric characters or underscore. * @param connectionId Target connection Id. * @param options The options parameters. */ closeConnection(hub: string, connectionId: string, options?: WebPubSubCloseConnectionOptionalParams): Promise<void>; /** * Check if the connection with the given connectionId exists. * @param hub Target hub name, which should start with alphabetic characters and only contain * alpha-numeric characters or underscore. * @param connectionId The connection Id. * @param options The options parameters. */ connectionExists(hub: string, connectionId: string, options?: WebPubSubConnectionExistsOptionalParams): Promise<void>; /** * Send content inside request body to the specific connection. * @param hub Target hub name, which should start with alphabetic characters and only contain * alpha-numeric characters or underscore. * @param connectionId The connection Id. * @param contentType Upload file type * @param message The payload body. * @param options The options parameters. */ sendToConnection(hub: string, connectionId: string, contentType: ContentType, message: coreRestPipeline.RequestBodyType, options?: WebPubSubSendToConnection$binaryOptionalParams): Promise<void>; /** * Send content inside request body to the specific connection. * @param hub Target hub name, which should start with alphabetic characters and only contain * alpha-numeric characters or underscore. * @param connectionId The connection Id. * @param contentType Upload file type * @param message The payload body. * @param options The options parameters. */ sendToConnection(hub: string, connectionId: string, contentType: "text/plain", message: string, options?: WebPubSubSendToConnection$textOptionalParams): Promise<void>; /** * Remove a connection from all groups. * @param hub Target hub name, which should start with alphabetic characters and only contain * alpha-numeric characters or underscore. * @param connectionId Target connection Id. * @param options The options parameters. */ removeConnectionFromAllGroups(hub: string, connectionId: string, options?: WebPubSubRemoveConnectionFromAllGroupsOptionalParams): Promise<void>; /** * Check if there are any client connections inside the given group * @param hub Target hub name, which should start with alphabetic characters and only contain * alpha-numeric characters or underscore. * @param group Target group name, which length should be greater than 0 and less than 1025. * @param options The options parameters. */ groupExists(hub: string, group: string, options?: WebPubSubGroupExistsOptionalParams): Promise<void>; /** * Close connections in the specific group. * @param hub Target hub name, which should start with alphabetic characters and only contain * alpha-numeric characters or underscore. * @param group Target group name, which length should be greater than 0 and less than 1025. * @param options The options parameters. */ closeGroupConnections(hub: string, group: string, options?: WebPubSubCloseGroupConnectionsOptionalParams): Promise<void>; /** * Send content inside request body to a group of connections. * @param hub Target hub name, which should start with alphabetic characters and only contain * alpha-numeric characters or underscore. * @param group Target group name, which length should be greater than 0 and less than 1025. * @param contentType Upload file type * @param message The payload body. * @param options The options parameters. */ sendToGroup(hub: string, group: string, contentType: ContentType, message: coreRestPipeline.RequestBodyType, options?: WebPubSubSendToGroup$binaryOptionalParams): Promise<void>; /** * Send content inside request body to a group of connections. * @param hub Target hub name, which should start with alphabetic characters and only contain * alpha-numeric characters or underscore. * @param group Target group name, which length should be greater than 0 and less than 1025. * @param contentType Upload file type * @param message The payload body. * @param options The options parameters. */ sendToGroup(hub: string, group: string, contentType: "text/plain", message: string, options?: WebPubSubSendToGroup$textOptionalParams): Promise<void>; /** * Remove a connection from the target group. * @param hub Target hub name, which should start with alphabetic characters and only contain * alpha-numeric characters or underscore. * @param group Target group name, which length should be greater than 0 and less than 1025. * @param connectionId Target connection Id. * @param options The options parameters. */ removeConnectionFromGroup(hub: string, group: string, connectionId: string, options?: WebPubSubRemoveConnectionFromGroupOptionalParams): Promise<void>; /** * Add a connection to the target group. * @param hub Target hub name, which should start with alphabetic characters and only contain * alpha-numeric characters or underscore. * @param group Target group name, which length should be greater than 0 and less than 1025. * @param connectionId Target connection Id * @param options The options parameters. */ addConnectionToGroup(hub: string, group: string, connectionId: string, options?: WebPubSubAddConnectionToGroupOptionalParams): Promise<void>; /** * Revoke permission for the connection. * @param hub Target hub name, which should start with alphabetic characters and only contain * alpha-numeric characters or underscore. * @param permission The permission: current supported actions are joinLeaveGroup and sendToGroup. * @param connectionId Target connection Id. * @param options The options parameters. */ revokePermission(hub: string, permission: WebPubSubPermission, connectionId: string, options?: WebPubSubRevokePermissionOptionalParams): Promise<void>; /** * Check if a connection has permission to the specified action. * @param hub Target hub name, which should start with alphabetic characters and only contain * alpha-numeric characters or underscore. * @param permission The permission: current supported actions are joinLeaveGroup and sendToGroup. * @param connectionId Target connection Id. * @param options The options parameters. */ checkPermission(hub: string, permission: WebPubSubPermission, connectionId: string, options?: WebPubSubCheckPermissionOptionalParams): Promise<void>; /** * Grant permission to the connection. * @param hub Target hub name, which should start with alphabetic characters and only contain * alpha-numeric characters or underscore. * @param permission The permission: current supported actions are joinLeaveGroup and sendToGroup. * @param connectionId Target connection Id. * @param options The options parameters. */ grantPermission(hub: string, permission: WebPubSubPermission, connectionId: string, options?: WebPubSubGrantPermissionOptionalParams): Promise<void>; /** * Check if there are any client connections connected for the given user. * @param hub Target hub name, which should start with alphabetic characters and only contain * alpha-numeric characters or underscore. * @param userId Target user Id. * @param options The options parameters. */ userExists(hub: string, userId: string, options?: WebPubSubUserExistsOptionalParams): Promise<void>; /** * Close connections for the specific user. * @param hub Target hub name, which should start with alphabetic characters and only contain * alpha-numeric characters or underscore. * @param userId The user Id. * @param options The options parameters. */ closeUserConnections(hub: string, userId: string, options?: WebPubSubCloseUserConnectionsOptionalParams): Promise<void>; /** * Send content inside request body to the specific user. * @param hub Target hub name, which should start with alphabetic characters and only contain * alpha-numeric characters or underscore. * @param userId The user Id. * @param contentType Upload file type * @param message The payload body. * @param options The options parameters. */ sendToUser(hub: string, userId: string, contentType: ContentType, message: coreRestPipeline.RequestBodyType, options?: WebPubSubSendToUser$binaryOptionalParams): Promise<void>; /** * Send content inside request body to the specific user. * @param hub Target hub name, which should start with alphabetic characters and only contain * alpha-numeric characters or underscore. * @param userId The user Id. * @param contentType Upload file type * @param message The payload body. * @param options The options parameters. */ sendToUser(hub: string, userId: string, contentType: "text/plain", message: string, options?: WebPubSubSendToUser$textOptionalParams): Promise<void>; /** * Remove a user from all groups. * @param hub Target hub name, which should start with alphabetic characters and only contain * alpha-numeric characters or underscore. * @param userId Target user Id. * @param options The options parameters. */ removeUserFromAllGroups(hub: string, userId: string, options?: WebPubSubRemoveUserFromAllGroupsOptionalParams): Promise<void>; /** * Remove a user from the target group. * @param hub Target hub name, which should start with alphabetic characters and only contain * alpha-numeric characters or underscore. * @param group Target group name, which length should be greater than 0 and less than 1025. * @param userId Target user Id. * @param options The options parameters. */ removeUserFromGroup(hub: string, group: string, userId: string, options?: WebPubSubRemoveUserFromGroupOptionalParams): Promise<void>; /** * Add a user to the target group. * @param hub Target hub name, which should start with alphabetic characters and only contain * alpha-numeric characters or underscore. * @param group Target group name, which length should be greater than 0 and less than 1025. * @param userId Target user Id. * @param options The options parameters. */ addUserToGroup(hub: string, group: string, userId: string, options?: WebPubSubAddUserToGroupOptionalParams): Promise<void>; } //# sourceMappingURL=webPubSub.d.ts.map