UNPKG

@azure/web-pubsub

Version:
1,000 lines 37.4 kB
/* * Copyright (c) Microsoft Corporation. * Licensed under the MIT License. * * Code generated by Microsoft (R) AutoRest Code Generator. * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ import { __asyncDelegator, __asyncGenerator, __asyncValues, __await } from "tslib"; import { setContinuationToken } from "../pagingHelper.js"; import * as coreClient from "@azure/core-client"; import * as Mappers from "../models/mappers.js"; import * as Parameters from "../models/parameters.js"; /// <reference lib="esnext.asynciterable" /> /** Class containing WebPubSub operations. */ export class WebPubSubImpl { /** * Initialize a new instance of the class WebPubSub class. * @param client Reference to the service client */ constructor(client) { this.client = client; } /** * List connections in a 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, whose length should be greater than 0 and less than 1025. * @param options The options parameters. */ listConnectionsInGroup(hub, group, options) { const iter = this.listConnectionsInGroupPagingAll(hub, group, options); return { next() { return iter.next(); }, [Symbol.asyncIterator]() { return this; }, byPage: (settings) => { if (settings === null || settings === void 0 ? void 0 : settings.maxPageSize) { throw new Error("maxPageSize is not supported by this operation."); } return this.listConnectionsInGroupPagingPage(hub, group, options, settings); }, }; } listConnectionsInGroupPagingPage(hub, group, options, settings) { return __asyncGenerator(this, arguments, function* listConnectionsInGroupPagingPage_1() { let result; let continuationToken = settings === null || settings === void 0 ? void 0 : settings.continuationToken; if (!continuationToken) { result = yield __await(this._listConnectionsInGroup(hub, group, options)); let page = result.value || []; continuationToken = result.nextLink; setContinuationToken(page, continuationToken); yield yield __await(page); } while (continuationToken) { result = yield __await(this._listConnectionsInGroupNext(hub, group, continuationToken, options)); continuationToken = result.nextLink; let page = result.value || []; setContinuationToken(page, continuationToken); yield yield __await(page); } }); } listConnectionsInGroupPagingAll(hub, group, options) { return __asyncGenerator(this, arguments, function* listConnectionsInGroupPagingAll_1() { var _a, e_1, _b, _c; try { for (var _d = true, _e = __asyncValues(this.listConnectionsInGroupPagingPage(hub, group, options)), _f; _f = yield __await(_e.next()), _a = _f.done, !_a; _d = true) { _c = _f.value; _d = false; const page = _c; yield __await(yield* __asyncDelegator(__asyncValues(page))); } } catch (e_1_1) { e_1 = { error: e_1_1 }; } finally { try { if (!_d && !_a && (_b = _e.return)) yield __await(_b.call(_e)); } finally { if (e_1) throw e_1.error; } } }); } /** * 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, groupsToAdd, options) { return this.client.sendOperationRequest({ hub, groupsToAdd, options }, addConnectionsToGroupsOperationSpec); } /** * 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, options) { return this.client.sendOperationRequest({ hub, options }, closeAllConnectionsOperationSpec); } /** * 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, options) { return this.client.sendOperationRequest({ hub, options }, generateClientTokenOperationSpec); } /** * 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, groupsToRemove, options) { return this.client.sendOperationRequest({ hub, groupsToRemove, options }, removeConnectionsFromGroupsOperationSpec); } /** * Broadcast content inside request body to all the connected client connections. * @param args Includes all the parameters for this operation. */ sendToAll(...args) { let operationSpec; let operationArguments; let options; if (args[1] === "application/json" || args[1] === "application/octet-stream") { operationSpec = sendToAll$binaryOperationSpec; operationArguments = { hub: args[0], contentType: args[1], message: args[2], options: args[3], }; options = args[3]; } else if (args[1] === "text/plain") { operationSpec = sendToAll$textOperationSpec; operationArguments = { hub: args[0], contentType: args[1], message: args[2], options: args[3], }; options = args[3]; } else { throw new TypeError(`"contentType" must be a valid value but instead was "${args[1]}".`); } operationArguments.options = options || {}; return this.client.sendOperationRequest(operationArguments, operationSpec); } /** * 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, connectionId, options) { return this.client.sendOperationRequest({ hub, connectionId, options }, closeConnectionOperationSpec); } /** * 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, connectionId, options) { return this.client.sendOperationRequest({ hub, connectionId, options }, connectionExistsOperationSpec); } /** * Send content inside request body to the specific connection. * @param args Includes all the parameters for this operation. */ sendToConnection(...args) { let operationSpec; let operationArguments; let options; if (args[2] === "application/json" || args[2] === "application/octet-stream") { operationSpec = sendToConnection$binaryOperationSpec; operationArguments = { hub: args[0], connectionId: args[1], contentType: args[2], message: args[3], options: args[4], }; options = args[4]; } else if (args[2] === "text/plain") { operationSpec = sendToConnection$textOperationSpec; operationArguments = { hub: args[0], connectionId: args[1], contentType: args[2], message: args[3], options: args[4], }; options = args[4]; } else { throw new TypeError(`"contentType" must be a valid value but instead was "${args[2]}".`); } operationArguments.options = options || {}; return this.client.sendOperationRequest(operationArguments, operationSpec); } /** * 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, connectionId, options) { return this.client.sendOperationRequest({ hub, connectionId, options }, removeConnectionFromAllGroupsOperationSpec); } /** * 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, group, options) { return this.client.sendOperationRequest({ hub, group, options }, groupExistsOperationSpec); } /** * 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, group, options) { return this.client.sendOperationRequest({ hub, group, options }, closeGroupConnectionsOperationSpec); } /** * Send content inside request body to a group of connections. * @param args Includes all the parameters for this operation. */ sendToGroup(...args) { let operationSpec; let operationArguments; let options; if (args[2] === "application/json" || args[2] === "application/octet-stream") { operationSpec = sendToGroup$binaryOperationSpec; operationArguments = { hub: args[0], group: args[1], contentType: args[2], message: args[3], options: args[4], }; options = args[4]; } else if (args[2] === "text/plain") { operationSpec = sendToGroup$textOperationSpec; operationArguments = { hub: args[0], group: args[1], contentType: args[2], message: args[3], options: args[4], }; options = args[4]; } else { throw new TypeError(`"contentType" must be a valid value but instead was "${args[2]}".`); } operationArguments.options = options || {}; return this.client.sendOperationRequest(operationArguments, operationSpec); } /** * List connections in a 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, whose length should be greater than 0 and less than 1025. * @param options The options parameters. */ _listConnectionsInGroup(hub, group, options) { return this.client.sendOperationRequest({ hub, group, options }, listConnectionsInGroupOperationSpec); } /** * 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, group, connectionId, options) { return this.client.sendOperationRequest({ hub, group, connectionId, options }, removeConnectionFromGroupOperationSpec); } /** * 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, group, connectionId, options) { return this.client.sendOperationRequest({ hub, group, connectionId, options }, addConnectionToGroupOperationSpec); } /** * 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, permission, connectionId, options) { return this.client.sendOperationRequest({ hub, permission, connectionId, options }, revokePermissionOperationSpec); } /** * 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, permission, connectionId, options) { return this.client.sendOperationRequest({ hub, permission, connectionId, options }, checkPermissionOperationSpec); } /** * 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, permission, connectionId, options) { return this.client.sendOperationRequest({ hub, permission, connectionId, options }, grantPermissionOperationSpec); } /** * 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, userId, options) { return this.client.sendOperationRequest({ hub, userId, options }, userExistsOperationSpec); } /** * 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, userId, options) { return this.client.sendOperationRequest({ hub, userId, options }, closeUserConnectionsOperationSpec); } /** * Send content inside request body to the specific user. * @param args Includes all the parameters for this operation. */ sendToUser(...args) { let operationSpec; let operationArguments; let options; if (args[2] === "application/json" || args[2] === "application/octet-stream") { operationSpec = sendToUser$binaryOperationSpec; operationArguments = { hub: args[0], userId: args[1], contentType: args[2], message: args[3], options: args[4], }; options = args[4]; } else if (args[2] === "text/plain") { operationSpec = sendToUser$textOperationSpec; operationArguments = { hub: args[0], userId: args[1], contentType: args[2], message: args[3], options: args[4], }; options = args[4]; } else { throw new TypeError(`"contentType" must be a valid value but instead was "${args[2]}".`); } operationArguments.options = options || {}; return this.client.sendOperationRequest(operationArguments, operationSpec); } /** * 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, userId, options) { return this.client.sendOperationRequest({ hub, userId, options }, removeUserFromAllGroupsOperationSpec); } /** * 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, group, userId, options) { return this.client.sendOperationRequest({ hub, group, userId, options }, removeUserFromGroupOperationSpec); } /** * 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, group, userId, options) { return this.client.sendOperationRequest({ hub, group, userId, options }, addUserToGroupOperationSpec); } /** * ListConnectionsInGroupNext * @param hub Target hub name, which should start with alphabetic characters and only contain * alpha-numeric characters or underscore. * @param group Target group name, whose length should be greater than 0 and less than 1025. * @param nextLink The nextLink from the previous successful call to the ListConnectionsInGroup method. * @param options The options parameters. */ _listConnectionsInGroupNext(hub, group, nextLink, options) { return this.client.sendOperationRequest({ hub, group, nextLink, options }, listConnectionsInGroupNextOperationSpec); } } // Operation Specifications const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); const addConnectionsToGroupsOperationSpec = { path: "/api/hubs/{hub}/:addToGroups", httpMethod: "POST", responses: { 200: {}, default: { bodyMapper: Mappers.ErrorDetail, headersMapper: Mappers.WebPubSubAddConnectionsToGroupsExceptionHeaders, }, }, requestBody: Parameters.groupsToAdd, queryParameters: [Parameters.apiVersion], urlParameters: [Parameters.endpoint, Parameters.hub], headerParameters: [Parameters.contentType, Parameters.accept], mediaType: "json", serializer, }; const closeAllConnectionsOperationSpec = { path: "/api/hubs/{hub}/:closeConnections", httpMethod: "POST", responses: { 204: {}, default: { bodyMapper: Mappers.ErrorDetail, headersMapper: Mappers.WebPubSubCloseAllConnectionsExceptionHeaders, }, }, queryParameters: [ Parameters.apiVersion, Parameters.excluded, Parameters.reason, ], urlParameters: [Parameters.endpoint, Parameters.hub], headerParameters: [Parameters.accept], serializer, }; const generateClientTokenOperationSpec = { path: "/api/hubs/{hub}/:generateToken", httpMethod: "POST", responses: { 200: { bodyMapper: Mappers.ClientTokenResponse, }, default: { bodyMapper: Mappers.ErrorDetail, headersMapper: Mappers.WebPubSubGenerateClientTokenExceptionHeaders, }, }, queryParameters: [ Parameters.apiVersion, Parameters.userId, Parameters.roles, Parameters.expirationTimeInMinutes, Parameters.groups, Parameters.clientType, ], urlParameters: [Parameters.endpoint, Parameters.hub], headerParameters: [Parameters.accept1], serializer, }; const removeConnectionsFromGroupsOperationSpec = { path: "/api/hubs/{hub}/:removeFromGroups", httpMethod: "POST", responses: { 200: {}, default: { bodyMapper: Mappers.ErrorDetail, headersMapper: Mappers.WebPubSubRemoveConnectionsFromGroupsExceptionHeaders, }, }, requestBody: Parameters.groupsToRemove, queryParameters: [Parameters.apiVersion], urlParameters: [Parameters.endpoint, Parameters.hub], headerParameters: [Parameters.contentType, Parameters.accept], mediaType: "json", serializer, }; const sendToAll$binaryOperationSpec = { path: "/api/hubs/{hub}/:send", httpMethod: "POST", responses: { 202: {}, default: { bodyMapper: Mappers.ErrorDetail, headersMapper: Mappers.WebPubSubSendToAllExceptionHeaders, }, }, requestBody: Parameters.message, queryParameters: [ Parameters.apiVersion, Parameters.excludedConnections, Parameters.filter, Parameters.messageTtlSeconds, ], urlParameters: [Parameters.endpoint, Parameters.hub], headerParameters: [Parameters.contentType1, Parameters.accept2], mediaType: "binary", serializer, }; const sendToAll$textOperationSpec = { path: "/api/hubs/{hub}/:send", httpMethod: "POST", responses: { 202: {}, default: { bodyMapper: Mappers.ErrorDetail, headersMapper: Mappers.WebPubSubSendToAllExceptionHeaders, }, }, requestBody: Parameters.message1, queryParameters: [ Parameters.apiVersion, Parameters.excludedConnections, Parameters.filter, Parameters.messageTtlSeconds, ], urlParameters: [Parameters.endpoint, Parameters.hub], headerParameters: [Parameters.contentType2, Parameters.accept3], mediaType: "text", serializer, }; const closeConnectionOperationSpec = { path: "/api/hubs/{hub}/connections/{connectionId}", httpMethod: "DELETE", responses: { 204: {}, default: { bodyMapper: Mappers.ErrorDetail, headersMapper: Mappers.WebPubSubCloseConnectionExceptionHeaders, }, }, queryParameters: [Parameters.apiVersion, Parameters.reason], urlParameters: [Parameters.endpoint, Parameters.hub, Parameters.connectionId], headerParameters: [Parameters.accept], serializer, }; const connectionExistsOperationSpec = { path: "/api/hubs/{hub}/connections/{connectionId}", httpMethod: "HEAD", responses: { 200: {}, 404: {}, default: { headersMapper: Mappers.WebPubSubConnectionExistsExceptionHeaders, }, }, queryParameters: [Parameters.apiVersion], urlParameters: [Parameters.endpoint, Parameters.hub, Parameters.connectionId], serializer, }; const sendToConnection$binaryOperationSpec = { path: "/api/hubs/{hub}/connections/{connectionId}/:send", httpMethod: "POST", responses: { 202: {}, default: { bodyMapper: Mappers.ErrorDetail, headersMapper: Mappers.WebPubSubSendToConnectionExceptionHeaders, }, }, requestBody: Parameters.message, queryParameters: [Parameters.apiVersion, Parameters.messageTtlSeconds], urlParameters: [Parameters.endpoint, Parameters.hub, Parameters.connectionId], headerParameters: [Parameters.contentType1, Parameters.accept2], mediaType: "binary", serializer, }; const sendToConnection$textOperationSpec = { path: "/api/hubs/{hub}/connections/{connectionId}/:send", httpMethod: "POST", responses: { 202: {}, default: { bodyMapper: Mappers.ErrorDetail, headersMapper: Mappers.WebPubSubSendToConnectionExceptionHeaders, }, }, requestBody: Parameters.message1, queryParameters: [Parameters.apiVersion, Parameters.messageTtlSeconds], urlParameters: [Parameters.endpoint, Parameters.hub, Parameters.connectionId], headerParameters: [Parameters.contentType2, Parameters.accept3], mediaType: "text", serializer, }; const removeConnectionFromAllGroupsOperationSpec = { path: "/api/hubs/{hub}/connections/{connectionId}/groups", httpMethod: "DELETE", responses: { 204: {}, default: { bodyMapper: Mappers.ErrorDetail, headersMapper: Mappers.WebPubSubRemoveConnectionFromAllGroupsExceptionHeaders, }, }, queryParameters: [Parameters.apiVersion], urlParameters: [Parameters.endpoint, Parameters.hub, Parameters.connectionId], headerParameters: [Parameters.accept], serializer, }; const groupExistsOperationSpec = { path: "/api/hubs/{hub}/groups/{group}", httpMethod: "HEAD", responses: { 200: {}, 404: {}, default: { headersMapper: Mappers.WebPubSubGroupExistsExceptionHeaders, }, }, queryParameters: [Parameters.apiVersion], urlParameters: [Parameters.endpoint, Parameters.hub, Parameters.group], serializer, }; const closeGroupConnectionsOperationSpec = { path: "/api/hubs/{hub}/groups/{group}/:closeConnections", httpMethod: "POST", responses: { 204: {}, default: { bodyMapper: Mappers.ErrorDetail, headersMapper: Mappers.WebPubSubCloseGroupConnectionsExceptionHeaders, }, }, queryParameters: [ Parameters.apiVersion, Parameters.excluded, Parameters.reason, ], urlParameters: [Parameters.endpoint, Parameters.hub, Parameters.group], headerParameters: [Parameters.accept], serializer, }; const sendToGroup$binaryOperationSpec = { path: "/api/hubs/{hub}/groups/{group}/:send", httpMethod: "POST", responses: { 202: {}, default: { bodyMapper: Mappers.ErrorDetail, headersMapper: Mappers.WebPubSubSendToGroupExceptionHeaders, }, }, requestBody: Parameters.message, queryParameters: [ Parameters.apiVersion, Parameters.excludedConnections, Parameters.filter, Parameters.messageTtlSeconds, ], urlParameters: [Parameters.endpoint, Parameters.hub, Parameters.group], headerParameters: [Parameters.contentType1, Parameters.accept2], mediaType: "binary", serializer, }; const sendToGroup$textOperationSpec = { path: "/api/hubs/{hub}/groups/{group}/:send", httpMethod: "POST", responses: { 202: {}, default: { bodyMapper: Mappers.ErrorDetail, headersMapper: Mappers.WebPubSubSendToGroupExceptionHeaders, }, }, requestBody: Parameters.message1, queryParameters: [ Parameters.apiVersion, Parameters.excludedConnections, Parameters.filter, Parameters.messageTtlSeconds, ], urlParameters: [Parameters.endpoint, Parameters.hub, Parameters.group], headerParameters: [Parameters.contentType2, Parameters.accept3], mediaType: "text", serializer, }; const listConnectionsInGroupOperationSpec = { path: "/api/hubs/{hub}/groups/{group}/connections", httpMethod: "GET", responses: { 200: { bodyMapper: Mappers.GroupMemberPagedValues, }, default: { bodyMapper: Mappers.ErrorDetail, headersMapper: Mappers.WebPubSubListConnectionsInGroupExceptionHeaders, }, }, queryParameters: [ Parameters.apiVersion, Parameters.maxPageSize, Parameters.top, Parameters.continuationToken, ], urlParameters: [Parameters.endpoint, Parameters.hub, Parameters.group], headerParameters: [Parameters.accept], serializer, }; const removeConnectionFromGroupOperationSpec = { path: "/api/hubs/{hub}/groups/{group}/connections/{connectionId}", httpMethod: "DELETE", responses: { 204: {}, default: { bodyMapper: Mappers.ErrorDetail, headersMapper: Mappers.WebPubSubRemoveConnectionFromGroupExceptionHeaders, }, }, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.endpoint, Parameters.hub, Parameters.connectionId, Parameters.group, ], headerParameters: [Parameters.accept], serializer, }; const addConnectionToGroupOperationSpec = { path: "/api/hubs/{hub}/groups/{group}/connections/{connectionId}", httpMethod: "PUT", responses: { 200: {}, default: { bodyMapper: Mappers.ErrorDetail, headersMapper: Mappers.WebPubSubAddConnectionToGroupExceptionHeaders, }, }, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.endpoint, Parameters.hub, Parameters.connectionId, Parameters.group, ], headerParameters: [Parameters.accept], serializer, }; const revokePermissionOperationSpec = { path: "/api/hubs/{hub}/permissions/{permission}/connections/{connectionId}", httpMethod: "DELETE", responses: { 204: {}, default: { bodyMapper: Mappers.ErrorDetail, headersMapper: Mappers.WebPubSubRevokePermissionExceptionHeaders, }, }, queryParameters: [Parameters.apiVersion, Parameters.targetName], urlParameters: [ Parameters.endpoint, Parameters.hub, Parameters.connectionId, Parameters.permission, ], headerParameters: [Parameters.accept], serializer, }; const checkPermissionOperationSpec = { path: "/api/hubs/{hub}/permissions/{permission}/connections/{connectionId}", httpMethod: "HEAD", responses: { 200: {}, 404: {}, default: { headersMapper: Mappers.WebPubSubCheckPermissionExceptionHeaders, }, }, queryParameters: [Parameters.apiVersion, Parameters.targetName], urlParameters: [ Parameters.endpoint, Parameters.hub, Parameters.connectionId, Parameters.permission, ], serializer, }; const grantPermissionOperationSpec = { path: "/api/hubs/{hub}/permissions/{permission}/connections/{connectionId}", httpMethod: "PUT", responses: { 200: {}, default: { bodyMapper: Mappers.ErrorDetail, headersMapper: Mappers.WebPubSubGrantPermissionExceptionHeaders, }, }, queryParameters: [Parameters.apiVersion, Parameters.targetName], urlParameters: [ Parameters.endpoint, Parameters.hub, Parameters.connectionId, Parameters.permission, ], headerParameters: [Parameters.accept], serializer, }; const userExistsOperationSpec = { path: "/api/hubs/{hub}/users/{userId}", httpMethod: "HEAD", responses: { 200: {}, 404: {}, default: { headersMapper: Mappers.WebPubSubUserExistsExceptionHeaders, }, }, queryParameters: [Parameters.apiVersion], urlParameters: [Parameters.endpoint, Parameters.hub, Parameters.userId1], serializer, }; const closeUserConnectionsOperationSpec = { path: "/api/hubs/{hub}/users/{userId}/:closeConnections", httpMethod: "POST", responses: { 204: {}, default: { bodyMapper: Mappers.ErrorDetail, headersMapper: Mappers.WebPubSubCloseUserConnectionsExceptionHeaders, }, }, queryParameters: [ Parameters.apiVersion, Parameters.excluded, Parameters.reason, ], urlParameters: [Parameters.endpoint, Parameters.hub, Parameters.userId1], headerParameters: [Parameters.accept], serializer, }; const sendToUser$binaryOperationSpec = { path: "/api/hubs/{hub}/users/{userId}/:send", httpMethod: "POST", responses: { 202: {}, default: { bodyMapper: Mappers.ErrorDetail, headersMapper: Mappers.WebPubSubSendToUserExceptionHeaders, }, }, requestBody: Parameters.message, queryParameters: [ Parameters.apiVersion, Parameters.filter, Parameters.messageTtlSeconds, ], urlParameters: [Parameters.endpoint, Parameters.hub, Parameters.userId1], headerParameters: [Parameters.contentType1, Parameters.accept2], mediaType: "binary", serializer, }; const sendToUser$textOperationSpec = { path: "/api/hubs/{hub}/users/{userId}/:send", httpMethod: "POST", responses: { 202: {}, default: { bodyMapper: Mappers.ErrorDetail, headersMapper: Mappers.WebPubSubSendToUserExceptionHeaders, }, }, requestBody: Parameters.message1, queryParameters: [ Parameters.apiVersion, Parameters.filter, Parameters.messageTtlSeconds, ], urlParameters: [Parameters.endpoint, Parameters.hub, Parameters.userId1], headerParameters: [Parameters.contentType2, Parameters.accept3], mediaType: "text", serializer, }; const removeUserFromAllGroupsOperationSpec = { path: "/api/hubs/{hub}/users/{userId}/groups", httpMethod: "DELETE", responses: { 204: {}, default: { bodyMapper: Mappers.ErrorDetail, headersMapper: Mappers.WebPubSubRemoveUserFromAllGroupsExceptionHeaders, }, }, queryParameters: [Parameters.apiVersion], urlParameters: [Parameters.endpoint, Parameters.hub, Parameters.userId1], headerParameters: [Parameters.accept], serializer, }; const removeUserFromGroupOperationSpec = { path: "/api/hubs/{hub}/users/{userId}/groups/{group}", httpMethod: "DELETE", responses: { 204: {}, default: { bodyMapper: Mappers.ErrorDetail, headersMapper: Mappers.WebPubSubRemoveUserFromGroupExceptionHeaders, }, }, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.endpoint, Parameters.hub, Parameters.group, Parameters.userId1, ], headerParameters: [Parameters.accept], serializer, }; const addUserToGroupOperationSpec = { path: "/api/hubs/{hub}/users/{userId}/groups/{group}", httpMethod: "PUT", responses: { 200: {}, default: { bodyMapper: Mappers.ErrorDetail, headersMapper: Mappers.WebPubSubAddUserToGroupExceptionHeaders, }, }, queryParameters: [Parameters.apiVersion], urlParameters: [ Parameters.endpoint, Parameters.hub, Parameters.group, Parameters.userId1, ], headerParameters: [Parameters.accept], serializer, }; const listConnectionsInGroupNextOperationSpec = { path: "{nextLink}", httpMethod: "GET", responses: { 200: { bodyMapper: Mappers.GroupMemberPagedValues, }, default: { bodyMapper: Mappers.ErrorDetail, headersMapper: Mappers.WebPubSubListConnectionsInGroupNextExceptionHeaders, }, }, urlParameters: [ Parameters.endpoint, Parameters.hub, Parameters.group, Parameters.nextLink, ], headerParameters: [Parameters.accept], serializer, }; //# sourceMappingURL=webPubSub.js.map