@wix/auto_sdk_data_permissions 1.0.13 → 1.0.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"sources":["../../index.ts","../../src/data-v1-data-permissions-permissions.universal.ts","../../src/data-v1-data-permissions-permissions.http.ts","../../src/data-v1-data-permissions-permissions.public.ts","../../src/data-v1-data-permissions-permissions.context.ts"],"sourcesContent":["export * from './src/data-v1-data-permissions-permissions.context.js';\n","import { transformError as sdkTransformError } from '@wix/sdk-runtime/transform-error';\nimport {\n renameKeysFromSDKRequestToRESTRequest,\n renameKeysFromRESTResponseToSDKResponse,\n} from '@wix/sdk-runtime/rename-all-nested-keys';\nimport { HttpClient, NonNullablePaths } from '@wix/sdk-types';\nimport * as ambassadorWixDataV1DataPermissions from './data-v1-data-permissions-permissions.http.js';\n\n/**\n * Permissions configuration of a data collection.\n *\n * Describes who can perform certain data operations on a collection.\n */\nexport interface DataPermissions {\n /**\n * Data Collection ID that is subject of these permissions\n * @immutable\n * @maxLength 255\n */\n _id?: string;\n /** Access level for data items read */\n itemRead?: AccessLevelWithLiterals;\n /** Access level for data items insert */\n itemInsert?: AccessLevelWithLiterals;\n /** Access level for data items update */\n itemUpdate?: AccessLevelWithLiterals;\n /** Access level for data items removal */\n itemRemove?: AccessLevelWithLiterals;\n}\n\n/**\n * Describes who can perform certain action.\n * Each level includes all levels below it (except UNDEFINED).\n */\nexport enum AccessLevel {\n /** Not set */\n UNKNOWN = 'UNKNOWN',\n /** Any subject, including visitors */\n ANYONE = 'ANYONE',\n /** Any signed-in user (both site members and collaborators) */\n SITE_MEMBER = 'SITE_MEMBER',\n /** Any signed-in user, but site members only have access to own items */\n SITE_MEMBER_AUTHOR = 'SITE_MEMBER_AUTHOR',\n /** Site collaborator that has a role with CMS Access permission */\n CMS_EDITOR = 'CMS_EDITOR',\n /** CMS administrators and users or roles granted with special access */\n PRIVILEGED = 'PRIVILEGED',\n}\n\n/** @enumType */\nexport type AccessLevelWithLiterals =\n | AccessLevel\n | 'UNKNOWN'\n | 'ANYONE'\n | 'SITE_MEMBER'\n | 'SITE_MEMBER_AUTHOR'\n | 'CMS_EDITOR'\n | 'PRIVILEGED';\n\n/** Special access granted to user or role */\nexport interface SpecialPermissions extends SpecialPermissionsSubjectOneOf {\n /**\n * User ID that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n userId?: string;\n /**\n * Policy ID of (custom) role that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n policyId?: string;\n /**\n * ID of this special access, so it can be managed separately\n * @format GUID\n * @readonly\n */\n _id?: string;\n /** If data item read is allowed */\n itemRead?: AccessWithLiterals;\n /** If data item insert is allowed */\n itemInsert?: AccessWithLiterals;\n /** If data item update is allowed */\n itemUpdate?: AccessWithLiterals;\n /** If data item remove is allowed */\n itemRemove?: AccessWithLiterals;\n}\n\n/** @oneof */\nexport interface SpecialPermissionsSubjectOneOf {\n /**\n * User ID that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n userId?: string;\n /**\n * Policy ID of (custom) role that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n policyId?: string;\n}\n\nexport enum Access {\n /** Action is not specifically allowed, but can be allowed by top-level permissions */\n UNSPECIFIED = 'UNSPECIFIED',\n /** Action is specifically allowed */\n ALLOWED = 'ALLOWED',\n}\n\n/** @enumType */\nexport type AccessWithLiterals = Access | 'UNSPECIFIED' | 'ALLOWED';\n\nexport interface GetPermissionsRequest {\n /**\n * Data Collection ID to get permissions for\n * @maxLength 256\n */\n dataCollectionId: string;\n}\n\nexport interface GetPermissionsResponse {\n /** Requested data permissions */\n dataPermissions?: DataPermissions;\n}\n\nexport interface UpdatePermissionsRequest {\n /** Data permissions to update */\n dataPermissions: DataPermissions;\n}\n\nexport interface UpdatePermissionsResponse {\n /** Updated data permissions */\n dataPermissions?: DataPermissions;\n}\n\nexport interface AddSpecialPermissionsRequest {\n /**\n * Data Collection ID to add special permission for\n * @maxLength 256\n */\n dataCollectionId: string;\n /** Special permissions to add */\n specialPermissions: SpecialPermissions;\n}\n\nexport interface AddSpecialPermissionsResponse {\n /** Added special data permissions */\n specialPermissions?: SpecialPermissions;\n}\n\nexport interface UpdateSpecialPermissionsRequest {\n /** Special permissions to update */\n specialPermissions: SpecialPermissions;\n}\n\nexport interface UpdateSpecialPermissionsResponse {\n /** Updated special data permissions */\n specialPermissions?: SpecialPermissions;\n}\n\nexport interface RemoveSpecialPermissionsRequest {\n /**\n * Special permissions ID to remove\n * @format GUID\n */\n specialPermissionsId: string;\n}\n\nexport interface RemoveSpecialPermissionsResponse {}\n\nexport interface GetMyPermissionsRequest {\n /**\n * Data Collection ID to get permission for\n * @maxLength 256\n */\n dataCollectionId: string;\n}\n\nexport interface GetMyPermissionsResponse {\n /** If data item read is allowed */\n itemRead?: boolean;\n /** If data item insert is allowed */\n itemInsert?: boolean;\n /** If data item update is allowed */\n itemUpdate?: boolean;\n /** If data item remove is allowed */\n itemRemove?: boolean;\n}\n\nexport interface MigrateCustomRolesRequest {\n /**\n * Role ID to update, if empty updates all roles in scope\n * @format GUID\n */\n policyId?: string | null;\n}\n\nexport interface MigrateCustomRolesResponse {}\n\nexport interface PolicyAssignmentsUpdated\n extends PolicyAssignmentsUpdatedEventOneOf {\n policyAssigned?: PolicyAssigned;\n policyUnassigned?: PolicyUnassigned;\n policyAssignmentUpdated?: PolicyAssignmentUpdated;\n}\n\n/** @oneof */\nexport interface PolicyAssignmentsUpdatedEventOneOf {\n policyAssigned?: PolicyAssigned;\n policyUnassigned?: PolicyUnassigned;\n policyAssignmentUpdated?: PolicyAssignmentUpdated;\n}\n\nexport interface PolicyAssigned {\n subject?: Subject;\n assignment?: PolicyAssignment[];\n}\n\nexport interface Subject {\n /** ID of identity assigned to the asset. */\n _id?: string;\n /** Type of identity assigned to the asset. Supported subject types include user IDs, account IDs, and app IDs. */\n subjectType?: SubjectTypeWithLiterals;\n /** Context of identity assigned to the asset. For example, a `subjectType` = `USER` will have `context` = `ACCOUNT`. */\n context?: SubjectContext;\n}\n\nexport enum SubjectType {\n UNKNOWN = 'UNKNOWN',\n ACCOUNT = 'ACCOUNT',\n USER = 'USER',\n USER_GROUP = 'USER_GROUP',\n MEMBER_GROUP = 'MEMBER_GROUP',\n VISITOR_GROUP = 'VISITOR_GROUP',\n EXTERNAL_APP = 'EXTERNAL_APP',\n ACCOUNT_GROUP = 'ACCOUNT_GROUP',\n WIX_APP = 'WIX_APP',\n}\n\n/** @enumType */\nexport type SubjectTypeWithLiterals =\n | SubjectType\n | 'UNKNOWN'\n | 'ACCOUNT'\n | 'USER'\n | 'USER_GROUP'\n | 'MEMBER_GROUP'\n | 'VISITOR_GROUP'\n | 'EXTERNAL_APP'\n | 'ACCOUNT_GROUP'\n | 'WIX_APP';\n\nexport interface SubjectContext {\n _id?: string;\n contextType?: SubjectContextTypeWithLiterals;\n}\n\nexport enum SubjectContextType {\n UNKNOWN_CTX = 'UNKNOWN_CTX',\n ORG_CTX = 'ORG_CTX',\n ACCOUNT_CTX = 'ACCOUNT_CTX',\n}\n\n/** @enumType */\nexport type SubjectContextTypeWithLiterals =\n | SubjectContextType\n | 'UNKNOWN_CTX'\n | 'ORG_CTX'\n | 'ACCOUNT_CTX';\n\nexport interface PolicyAssignment {\n policyId?: string;\n resource?: ResourcePath;\n condition?: PolicyCondition;\n assignmentId?: string | null;\n}\n\nexport interface ResourcePath {\n organization?: string | null;\n account?: string | null;\n site?: string | null;\n resource?: Resource;\n}\n\n/**\n * A custom resource. Is used to represent some asset that is not a direct resource context (site or account), but something custom.\n * For example: payment method, blog post, domain, logo.\n */\nexport interface Resource {\n /** The resource id. */\n _id?: string | null;\n /** The resource type */\n type?: string | null;\n}\n\nexport interface PolicyCondition {\n /** The type of the condition */\n condition?: ConditionType;\n}\n\nexport interface ConditionType extends ConditionTypeOfOneOf {\n /** @deprecated */\n simpleCondition?: SimpleCondition;\n /** A logic combination between several conditions, with an operator between them */\n joinedConditions?: JoinedCondition;\n /** @deprecated */\n environmentCondition?: EnvironmentCondition;\n /** A single condition */\n condition?: Condition;\n}\n\n/** @oneof */\nexport interface ConditionTypeOfOneOf {\n /** @deprecated */\n simpleCondition?: SimpleCondition;\n /** A logic combination between several conditions, with an operator between them */\n joinedConditions?: JoinedCondition;\n /** @deprecated */\n environmentCondition?: EnvironmentCondition;\n /** A single condition */\n condition?: Condition;\n}\n\nexport interface SimpleCondition {\n attrName?: string;\n value?: SimpleConditionValue;\n op?: SimpleConditionOperatorWithLiterals;\n conditionModelId?: string;\n}\n\nexport interface SimpleConditionValue extends SimpleConditionValueValueOneOf {\n attrName?: string;\n stringValue?: string;\n boolValue?: boolean;\n}\n\n/** @oneof */\nexport interface SimpleConditionValueValueOneOf {\n attrName?: string;\n stringValue?: string;\n boolValue?: boolean;\n}\n\nexport enum SimpleConditionOperator {\n UNKNOWN_SIMPLE_OP = 'UNKNOWN_SIMPLE_OP',\n EQUAL = 'EQUAL',\n}\n\n/** @enumType */\nexport type SimpleConditionOperatorWithLiterals =\n | SimpleConditionOperator\n | 'UNKNOWN_SIMPLE_OP'\n | 'EQUAL';\n\nexport interface JoinedCondition {\n /** The operator that should be used when evaluating the condition */\n op?: JoinedConditionOperatorWithLiterals;\n /** The conditions that should be evaluated, and then joined using the operator provided */\n conditions?: ConditionType[];\n}\n\nexport enum JoinedConditionOperator {\n UNKNOWN_JOIN_OP = 'UNKNOWN_JOIN_OP',\n OR = 'OR',\n AND = 'AND',\n}\n\n/** @enumType */\nexport type JoinedConditionOperatorWithLiterals =\n | JoinedConditionOperator\n | 'UNKNOWN_JOIN_OP'\n | 'OR'\n | 'AND';\n\nexport interface EnvironmentCondition\n extends EnvironmentConditionConditionOneOf {\n experimentCondition?: ExperimentCondition;\n}\n\n/** @oneof */\nexport interface EnvironmentConditionConditionOneOf {\n experimentCondition?: ExperimentCondition;\n}\n\nexport interface ExperimentCondition {\n spec?: string;\n fallbackValue?: string;\n expectedValue?: string;\n}\n\nexport interface Condition {\n /** The unique identifier of the condition model. Indicates which actions the condition is working on */\n conditionModelId?: string;\n /** The operator that should be evaluated */\n operator?: ConditionOperator;\n}\n\nexport interface ConditionOperator extends ConditionOperatorOperatorsOneOf {\n /** Comparison of equality - will be evaluated to true if the given parties are equal */\n equals?: EqualOperator;\n /** Regex operator - will be evaluated to true if the given value matches the provided regex */\n like?: LikeOperator;\n /** Petri experiment - will be evaluated using petri. */\n experiment?: ExperimentOperator;\n /** Operator that indicates a dependency on another subject being allowed to perform something. */\n dependOn?: DependOnOperator;\n}\n\n/** @oneof */\nexport interface ConditionOperatorOperatorsOneOf {\n /** Comparison of equality - will be evaluated to true if the given parties are equal */\n equals?: EqualOperator;\n /** Regex operator - will be evaluated to true if the given value matches the provided regex */\n like?: LikeOperator;\n /** Petri experiment - will be evaluated using petri. */\n experiment?: ExperimentOperator;\n /** Operator that indicates a dependency on another subject being allowed to perform something. */\n dependOn?: DependOnOperator;\n}\n\nexport interface EqualOperator {\n /** The attribute which should be compared. The attribute will be first evaluated to a value, and then compared the other side (attribute/value) */\n attrName?: string;\n /** The value to compare to. If the two parties are equal - we will return true. */\n value?: ConditionValue;\n}\n\nexport interface ConditionValue extends ConditionValueValueOneOf {\n /** an attribute. We'll first retrieve the value of the attribute (from the request or from pre-indexed values), and then compare to what it needs to be compared with. */\n attrName?: string;\n /** a value with a string type. Will be compared to the attribute provided, and be true only if they match the operator. */\n stringValue?: string;\n /** a value with a boolean type. Will be compared to the attribute provided, and be true only if they match the operator. */\n boolValue?: boolean;\n}\n\n/** @oneof */\nexport interface ConditionValueValueOneOf {\n /** an attribute. We'll first retrieve the value of the attribute (from the request or from pre-indexed values), and then compare to what it needs to be compared with. */\n attrName?: string;\n /** a value with a string type. Will be compared to the attribute provided, and be true only if they match the operator. */\n stringValue?: string;\n /** a value with a boolean type. Will be compared to the attribute provided, and be true only if they match the operator. */\n boolValue?: boolean;\n}\n\nexport interface LikeOperator {\n /** The attribute which should be compared. The attribute will be first evaluated to a value, and then compared the regex values provided. */\n attrName?: string;\n /** The regex values which the attribute value should be evaluated on. If the attribute value matches at least one of the regular expressions provided - we will return true */\n values?: string[];\n}\n\nexport interface ExperimentOperator {\n /** The spec to conduct the experiment on. */\n spec?: string;\n /** The value to use if the experiment could not be conducted */\n fallbackValue?: string;\n /** The expected value of the experiment conduction. If it matches the actual value - true will be returned. Otherwise - false. */\n expectedValue?: string;\n}\n\n/** Implies that the policy takes affect only if the depend on subject is permitted as well. */\nexport interface DependOnOperator {\n /** The subject on which the current entry depends on. If the subject is allowed to perform what the query was about - the condition will be evaluated to true. Otherwise - false */\n dependOnSubject?: Subject;\n}\n\nexport interface PolicyUnassigned {\n subject?: Subject;\n assignment?: PolicyAssignment[];\n}\n\nexport interface PolicyAssignmentUpdated {\n subject?: Subject;\n fromAssignment?: PolicyAssignment[];\n toAssignment?: PolicyAssignment[];\n}\n\nexport interface Empty {}\n\nexport interface PolicyAuthorizationDataUpdated {\n policyId?: string;\n fromPolicyStatements?: PolicyStatement[];\n toPolicyStatements?: PolicyStatement[];\n policyType?: PolicyTypeWithLiterals;\n policyOwner?: PolicyOwner;\n}\n\nexport interface PolicyStatement {\n /** @readonly */\n _id?: string | null;\n permissions?: string[];\n scopes?: string[];\n effect?: EffectWithLiterals;\n condition?: PolicyCondition;\n}\n\nexport enum Effect {\n UNKNOWN_EFFECT = 'UNKNOWN_EFFECT',\n ALLOW = 'ALLOW',\n DENY = 'DENY',\n}\n\n/** @enumType */\nexport type EffectWithLiterals = Effect | 'UNKNOWN_EFFECT' | 'ALLOW' | 'DENY';\n\nexport enum PolicyType {\n UNKNOWN_STATUS = 'UNKNOWN_STATUS',\n PREDEFINED = 'PREDEFINED',\n CUSTOM = 'CUSTOM',\n INLINE_CUSTOM = 'INLINE_CUSTOM',\n}\n\n/** @enumType */\nexport type PolicyTypeWithLiterals =\n | PolicyType\n | 'UNKNOWN_STATUS'\n | 'PREDEFINED'\n | 'CUSTOM'\n | 'INLINE_CUSTOM';\n\nexport interface PolicyOwner {\n type?: PolicyOwnerTypeWithLiterals;\n _id?: string;\n}\n\nexport enum PolicyOwnerType {\n UNKNOWN_TYPE = 'UNKNOWN_TYPE',\n WIX = 'WIX',\n WIX_ACCOUNT = 'WIX_ACCOUNT',\n}\n\n/** @enumType */\nexport type PolicyOwnerTypeWithLiterals =\n | PolicyOwnerType\n | 'UNKNOWN_TYPE'\n | 'WIX'\n | 'WIX_ACCOUNT';\n\nexport interface DomainEvent extends DomainEventBodyOneOf {\n createdEvent?: EntityCreatedEvent;\n updatedEvent?: EntityUpdatedEvent;\n deletedEvent?: EntityDeletedEvent;\n actionEvent?: ActionEvent;\n /** Event ID. With this ID you can easily spot duplicated events and ignore them. */\n _id?: string;\n /**\n * Fully Qualified Domain Name of an entity. This is a unique identifier assigned to the API main business entities.\n * For example, `wix.stores.catalog.product`, `wix.bookings.session`, `wix.payments.transaction`.\n */\n entityFqdn?: string;\n /**\n * Event action name, placed at the top level to make it easier for users to dispatch messages.\n * For example: `created`/`updated`/`deleted`/`started`/`completed`/`email_opened`.\n */\n slug?: string;\n /** ID of the entity associated with the event. */\n entityId?: string;\n /** Event timestamp in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format and UTC time. For example, `2020-04-26T13:57:50.699Z`. */\n eventTime?: Date | null;\n /**\n * Whether the event was triggered as a result of a privacy regulation application\n * (for example, GDPR).\n */\n triggeredByAnonymizeRequest?: boolean | null;\n /** If present, indicates the action that triggered the event. */\n originatedFrom?: string | null;\n /**\n * A sequence number that indicates the order of updates to an entity. For example, if an entity was updated at 16:00 and then again at 16:01, the second update will always have a higher sequence number.\n * You can use this number to make sure you're handling updates in the right order. Just save the latest sequence number on your end and compare it to the one in each new message. If the new message has an older (lower) number, you can safely ignore it.\n */\n entityEventSequence?: string | null;\n}\n\n/** @oneof */\nexport interface DomainEventBodyOneOf {\n createdEvent?: EntityCreatedEvent;\n updatedEvent?: EntityUpdatedEvent;\n deletedEvent?: EntityDeletedEvent;\n actionEvent?: ActionEvent;\n}\n\nexport interface EntityCreatedEvent {\n entity?: string;\n}\n\nexport interface RestoreInfo {\n deletedDate?: Date | null;\n}\n\nexport interface EntityUpdatedEvent {\n /**\n * Since platformized APIs only expose PATCH and not PUT we can't assume that the fields sent from the client are the actual diff.\n * This means that to generate a list of changed fields (as opposed to sent fields) one needs to traverse both objects.\n * We don't want to impose this on all developers and so we leave this traversal to the notification recipients which need it.\n */\n currentEntity?: string;\n}\n\nexport interface EntityDeletedEvent {\n /** Entity that was deleted. */\n deletedEntity?: string | null;\n}\n\nexport interface ActionEvent {\n body?: string;\n}\n\ntype DataPermissionsNonNullablePaths =\n | `_id`\n | `itemRead`\n | `itemInsert`\n | `itemUpdate`\n | `itemRemove`;\n\n/**\n * Returns data permissions for a data collection\n * @param dataCollectionId - Data Collection ID to get permissions for\n * @public\n * @documentationMaturity preview\n * @requiredField dataCollectionId\n * @permissionId WIX_DATA.PERMISSIONS_READ\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.GetPermissions\n */\nexport async function getPermissions(\n dataCollectionId: string\n): Promise<\n NonNullablePaths<\n GetPermissionsResponse,\n {\n [P in DataPermissionsNonNullablePaths]: `dataPermissions.${P}`;\n }[DataPermissionsNonNullablePaths]\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n dataCollectionId: dataCollectionId,\n });\n\n const reqOpts = ambassadorWixDataV1DataPermissions.getPermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { dataCollectionId: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['dataCollectionId']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Updates data permissions for a data collection\n *\n * NOTE that special permissions are not updated using this API, use dedicated methods for it.\n * @param dataPermissions - Data permissions to update\n * @public\n * @documentationMaturity preview\n * @requiredField dataPermissions\n * @requiredField dataPermissions._id\n * @requiredField dataPermissions.itemInsert\n * @requiredField dataPermissions.itemRead\n * @requiredField dataPermissions.itemRemove\n * @requiredField dataPermissions.itemUpdate\n * @permissionId WIX_DATA.PERMISSIONS_UPDATE\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.UpdatePermissions\n */\nexport async function updatePermissions(\n dataPermissions: NonNullablePaths<\n DataPermissions,\n `_id` | `itemInsert` | `itemRead` | `itemRemove` | `itemUpdate`\n >\n): Promise<\n NonNullablePaths<\n UpdatePermissionsResponse,\n {\n [P in DataPermissionsNonNullablePaths]: `dataPermissions.${P}`;\n }[DataPermissionsNonNullablePaths]\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n dataPermissions: dataPermissions,\n });\n\n const reqOpts = ambassadorWixDataV1DataPermissions.updatePermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { dataPermissions: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['dataPermissions']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Adds special data permissions for particular user/group\n * Errors:\n * - `ALREADY_EXISTS` in case if special permission for same subject already exists\n * @param dataCollectionId - Data Collection ID to add special permission for\n * @public\n * @documentationMaturity preview\n * @requiredField dataCollectionId\n * @requiredField options\n * @requiredField options.specialPermissions\n * @requiredField options.specialPermissions.subject\n * @permissionId WIX_DATA.PERMISSIONS_UPDATE_SPECIAL\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.AddSpecialPermissions\n */\nexport async function addSpecialPermissions(\n dataCollectionId: string,\n options: NonNullablePaths<AddSpecialPermissionsOptions, `specialPermissions`>\n): Promise<\n NonNullablePaths<\n AddSpecialPermissionsResponse,\n | `specialPermissions.userId`\n | `specialPermissions.policyId`\n | `specialPermissions._id`\n | `specialPermissions.itemRead`\n | `specialPermissions.itemInsert`\n | `specialPermissions.itemUpdate`\n | `specialPermissions.itemRemove`\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[2] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n dataCollectionId: dataCollectionId,\n specialPermissions: options?.specialPermissions,\n });\n\n const reqOpts =\n ambassadorWixDataV1DataPermissions.addSpecialPermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: {\n dataCollectionId: '$[0]',\n specialPermissions: '$[1].specialPermissions',\n },\n singleArgumentUnchanged: false,\n },\n ['dataCollectionId', 'options']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\nexport interface AddSpecialPermissionsOptions {\n /** Special permissions to add */\n specialPermissions: SpecialPermissions;\n}\n\n/**\n * Updates special data permissions for particular user/group.\n * Any omitted permissions will be set to UNSPECIFIED.\n * @param _id - ID of this special access, so it can be managed separately\n * @public\n * @documentationMaturity preview\n * @requiredField _id\n * @requiredField specialPermissions\n * @permissionId WIX_DATA.PERMISSIONS_UPDATE_SPECIAL\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.UpdateSpecialPermissions\n */\nexport async function updateSpecialPermissions(\n _id: string,\n specialPermissions: UpdateSpecialPermissions\n): Promise<\n NonNullablePaths<\n UpdateSpecialPermissionsResponse,\n | `specialPermissions.userId`\n | `specialPermissions.policyId`\n | `specialPermissions._id`\n | `specialPermissions.itemRead`\n | `specialPermissions.itemInsert`\n | `specialPermissions.itemUpdate`\n | `specialPermissions.itemRemove`\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[2] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n specialPermissions: { ...specialPermissions, id: _id },\n });\n\n const reqOpts =\n ambassadorWixDataV1DataPermissions.updateSpecialPermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: { specialPermissions: '$[1]' },\n explicitPathsToArguments: { 'specialPermissions.id': '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['_id', 'specialPermissions']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\nexport interface UpdateSpecialPermissions {\n /**\n * User ID that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n userId?: string;\n /**\n * Policy ID of (custom) role that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n policyId?: string;\n /**\n * ID of this special access, so it can be managed separately\n * @format GUID\n * @readonly\n */\n _id?: string;\n /** If data item read is allowed */\n itemRead?: AccessWithLiterals;\n /** If data item insert is allowed */\n itemInsert?: AccessWithLiterals;\n /** If data item update is allowed */\n itemUpdate?: AccessWithLiterals;\n /** If data item remove is allowed */\n itemRemove?: AccessWithLiterals;\n}\n\n/**\n * Deletes special data permissions for particular user/group\n * @param specialPermissionsId - Special permissions ID to remove\n * @public\n * @documentationMaturity preview\n * @requiredField specialPermissionsId\n * @permissionId WIX_DATA.PERMISSIONS_UPDATE_SPECIAL\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.RemoveSpecialPermissions\n */\nexport async function removeSpecialPermissions(\n specialPermissionsId: string\n): Promise<void> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n specialPermissionsId: specialPermissionsId,\n });\n\n const reqOpts =\n ambassadorWixDataV1DataPermissions.removeSpecialPermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { specialPermissionsId: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['specialPermissionsId']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Returns current user permissions for given data collection\n * @param dataCollectionId - Data Collection ID to get permission for\n * @public\n * @documentationMaturity preview\n * @requiredField dataCollectionId\n * @permissionId WIX_DATA.PERMISSIONS_GET_ALLOWED\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.GetMyPermissions\n */\nexport async function getMyPermissions(\n dataCollectionId: string\n): Promise<\n NonNullablePaths<\n GetMyPermissionsResponse,\n `itemRead` | `itemInsert` | `itemUpdate` | `itemRemove`\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n dataCollectionId: dataCollectionId,\n });\n\n const reqOpts = ambassadorWixDataV1DataPermissions.getMyPermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { dataCollectionId: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['dataCollectionId']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n","import { toURLSearchParams } from '@wix/sdk-runtime/rest-modules';\nimport { resolveUrl } from '@wix/sdk-runtime/rest-modules';\nimport { ResolveUrlOpts } from '@wix/sdk-runtime/rest-modules';\nimport { RequestOptionsFactory } from '@wix/sdk-types';\n\nfunction resolveWixCloudPermissionsV1DataPermissionsServiceUrl(\n opts: Omit<ResolveUrlOpts, 'domainToMappings'>\n) {\n const domainToMappings = {\n 'manage._base_domain_': [\n {\n srcPath: '/_api/cloud-data/v1/permissions',\n destPath: '/v1/permissions',\n },\n ],\n 'editor._base_domain_': [\n {\n srcPath: '/_api/cloud-data/v1/permissions',\n destPath: '/v1/permissions',\n },\n ],\n 'blocks._base_domain_': [\n {\n srcPath: '/_api/cloud-data/v1/permissions',\n destPath: '/v1/permissions',\n },\n ],\n 'create.editorx': [\n {\n srcPath: '/_api/cloud-data/v1/permissions',\n destPath: '/v1/permissions',\n },\n ],\n };\n\n return resolveUrl(Object.assign(opts, { domainToMappings }));\n}\n\nconst PACKAGE_NAME = '@wix/auto_sdk_data_permissions';\n\n/** Returns data permissions for a data collection */\nexport function getPermissions(payload: object): RequestOptionsFactory<any> {\n function __getPermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'GET' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.GetPermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n };\n\n return metadata;\n }\n\n return __getPermissions;\n}\n\n/**\n * Updates data permissions for a data collection\n *\n * NOTE that special permissions are not updated using this API, use dedicated methods for it.\n */\nexport function updatePermissions(payload: object): RequestOptionsFactory<any> {\n function __updatePermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'POST' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.UpdatePermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions',\n data: payload,\n host,\n }),\n data: payload,\n };\n\n return metadata;\n }\n\n return __updatePermissions;\n}\n\n/**\n * Adds special data permissions for particular user/group\n * Errors:\n * - `ALREADY_EXISTS` in case if special permission for same subject already exists\n */\nexport function addSpecialPermissions(\n payload: object\n): RequestOptionsFactory<any> {\n function __addSpecialPermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'POST' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.AddSpecialPermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions/special',\n data: payload,\n host,\n }),\n data: payload,\n };\n\n return metadata;\n }\n\n return __addSpecialPermissions;\n}\n\n/**\n * Updates special data permissions for particular user/group.\n * Any omitted permissions will be set to UNSPECIFIED.\n */\nexport function updateSpecialPermissions(\n payload: object\n): RequestOptionsFactory<any> {\n function __updateSpecialPermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'POST' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.UpdateSpecialPermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions/special/{specialPermissions.id}',\n data: payload,\n host,\n }),\n data: payload,\n };\n\n return metadata;\n }\n\n return __updateSpecialPermissions;\n}\n\n/** Deletes special data permissions for particular user/group */\nexport function removeSpecialPermissions(\n payload: object\n): RequestOptionsFactory<any> {\n function __removeSpecialPermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'DELETE' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.RemoveSpecialPermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions/special/{specialPermissionsId}',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n };\n\n return metadata;\n }\n\n return __removeSpecialPermissions;\n}\n\n/** Returns current user permissions for given data collection */\nexport function getMyPermissions(payload: object): RequestOptionsFactory<any> {\n function __getMyPermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'GET' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.GetMyPermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions/current',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n };\n\n return metadata;\n }\n\n return __getMyPermissions;\n}\n","import { HttpClient, NonNullablePaths } from '@wix/sdk-types';\nimport {\n AddSpecialPermissionsOptions,\n AddSpecialPermissionsResponse,\n DataPermissions,\n GetMyPermissionsResponse,\n GetPermissionsResponse,\n UpdatePermissionsResponse,\n UpdateSpecialPermissions,\n UpdateSpecialPermissionsResponse,\n addSpecialPermissions as universalAddSpecialPermissions,\n getMyPermissions as universalGetMyPermissions,\n getPermissions as universalGetPermissions,\n removeSpecialPermissions as universalRemoveSpecialPermissions,\n updatePermissions as universalUpdatePermissions,\n updateSpecialPermissions as universalUpdateSpecialPermissions,\n} from './data-v1-data-permissions-permissions.universal.js';\n\nexport const __metadata = { PACKAGE_NAME: '@wix/data' };\n\nexport function getPermissions(\n httpClient: HttpClient\n): GetPermissionsSignature {\n return (dataCollectionId: string) =>\n universalGetPermissions(\n dataCollectionId,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface GetPermissionsSignature {\n /**\n * Returns data permissions for a data collection\n * @param - Data Collection ID to get permissions for\n */\n (dataCollectionId: string): Promise<GetPermissionsResponse>;\n}\n\nexport function updatePermissions(\n httpClient: HttpClient\n): UpdatePermissionsSignature {\n return (\n dataPermissions: NonNullablePaths<\n DataPermissions,\n `_id` | `itemInsert` | `itemRead` | `itemRemove` | `itemUpdate`\n >\n ) =>\n universalUpdatePermissions(\n dataPermissions,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface UpdatePermissionsSignature {\n /**\n * Updates data permissions for a data collection\n *\n * NOTE that special permissions are not updated using this API, use dedicated methods for it.\n * @param - Data permissions to update\n */\n (dataPermissions: DataPermissions): Promise<UpdatePermissionsResponse>;\n}\n\nexport function addSpecialPermissions(\n httpClient: HttpClient\n): AddSpecialPermissionsSignature {\n return (\n dataCollectionId: string,\n options: NonNullablePaths<\n AddSpecialPermissionsOptions,\n `specialPermissions`\n >\n ) =>\n universalAddSpecialPermissions(\n dataCollectionId,\n options,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface AddSpecialPermissionsSignature {\n /**\n * Adds special data permissions for particular user/group\n * Errors:\n * - `ALREADY_EXISTS` in case if special permission for same subject already exists\n * @param - Data Collection ID to add special permission for\n */\n (\n dataCollectionId: string,\n options: AddSpecialPermissionsOptions\n ): Promise<AddSpecialPermissionsResponse>;\n}\n\nexport function updateSpecialPermissions(\n httpClient: HttpClient\n): UpdateSpecialPermissionsSignature {\n return (_id: string, specialPermissions: UpdateSpecialPermissions) =>\n universalUpdateSpecialPermissions(\n _id,\n specialPermissions,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface UpdateSpecialPermissionsSignature {\n /**\n * Updates special data permissions for particular user/group.\n * Any omitted permissions will be set to UNSPECIFIED.\n * @param - ID of this special access, so it can be managed separately\n */\n (\n _id: string,\n specialPermissions: UpdateSpecialPermissions\n ): Promise<UpdateSpecialPermissionsResponse>;\n}\n\nexport function removeSpecialPermissions(\n httpClient: HttpClient\n): RemoveSpecialPermissionsSignature {\n return (specialPermissionsId: string) =>\n universalRemoveSpecialPermissions(\n specialPermissionsId,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface RemoveSpecialPermissionsSignature {\n /**\n * Deletes special data permissions for particular user/group\n * @param - Special permissions ID to remove\n */\n (specialPermissionsId: string): Promise<void>;\n}\n\nexport function getMyPermissions(\n httpClient: HttpClient\n): GetMyPermissionsSignature {\n return (dataCollectionId: string) =>\n universalGetMyPermissions(\n dataCollectionId,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface GetMyPermissionsSignature {\n /**\n * Returns current user permissions for given data collection\n * @param - Data Collection ID to get permission for\n */\n (dataCollectionId: string): Promise<GetMyPermissionsResponse>;\n}\n\nexport {\n Access,\n AccessLevel,\n ActionEvent,\n AddSpecialPermissionsOptions,\n AddSpecialPermissionsRequest,\n AddSpecialPermissionsResponse,\n Condition,\n ConditionOperator,\n ConditionOperatorOperatorsOneOf,\n ConditionType,\n ConditionTypeOfOneOf,\n ConditionValue,\n ConditionValueValueOneOf,\n DataPermissions,\n DependOnOperator,\n DomainEvent,\n DomainEventBodyOneOf,\n Effect,\n Empty,\n EntityCreatedEvent,\n EntityDeletedEvent,\n EntityUpdatedEvent,\n EnvironmentCondition,\n EnvironmentConditionConditionOneOf,\n EqualOperator,\n ExperimentCondition,\n ExperimentOperator,\n GetMyPermissionsRequest,\n GetMyPermissionsResponse,\n GetPermissionsRequest,\n GetPermissionsResponse,\n JoinedCondition,\n JoinedConditionOperator,\n LikeOperator,\n MigrateCustomRolesRequest,\n MigrateCustomRolesResponse,\n PolicyAssigned,\n PolicyAssignment,\n PolicyAssignmentUpdated,\n PolicyAssignmentsUpdated,\n PolicyAssignmentsUpdatedEventOneOf,\n PolicyAuthorizationDataUpdated,\n PolicyCondition,\n PolicyOwner,\n PolicyOwnerType,\n PolicyStatement,\n PolicyType,\n PolicyUnassigned,\n RemoveSpecialPermissionsRequest,\n RemoveSpecialPermissionsResponse,\n Resource,\n ResourcePath,\n RestoreInfo,\n SimpleCondition,\n SimpleConditionOperator,\n SimpleConditionValue,\n SimpleConditionValueValueOneOf,\n SpecialPermissions,\n SpecialPermissionsSubjectOneOf,\n Subject,\n SubjectContext,\n SubjectContextType,\n SubjectType,\n UpdatePermissionsRequest,\n UpdatePermissionsResponse,\n UpdateSpecialPermissions,\n UpdateSpecialPermissionsRequest,\n UpdateSpecialPermissionsResponse,\n} from './data-v1-data-permissions-permissions.universal.js';\n","import {\n getPermissions as publicGetPermissions,\n updatePermissions as publicUpdatePermissions,\n addSpecialPermissions as publicAddSpecialPermissions,\n updateSpecialPermissions as publicUpdateSpecialPermissions,\n removeSpecialPermissions as publicRemoveSpecialPermissions,\n getMyPermissions as publicGetMyPermissions,\n} from './data-v1-data-permissions-permissions.public.js';\nimport { createRESTModule } from '@wix/sdk-runtime/rest-modules';\nimport { BuildRESTFunction, MaybeContext } from '@wix/sdk-types';\n\nexport const getPermissions: MaybeContext<\n BuildRESTFunction<typeof publicGetPermissions> & typeof publicGetPermissions\n> = /*#__PURE__*/ createRESTModule(publicGetPermissions);\nexport const updatePermissions: MaybeContext<\n BuildRESTFunction<typeof publicUpdatePermissions> &\n typeof publicUpdatePermissions\n> = /*#__PURE__*/ createRESTModule(publicUpdatePermissions);\nexport const addSpecialPermissions: MaybeContext<\n BuildRESTFunction<typeof publicAddSpecialPermissions> &\n typeof publicAddSpecialPermissions\n> = /*#__PURE__*/ createRESTModule(publicAddSpecialPermissions);\nexport const updateSpecialPermissions: MaybeContext<\n BuildRESTFunction<typeof publicUpdateSpecialPermissions> &\n typeof publicUpdateSpecialPermissions\n> = /*#__PURE__*/ createRESTModule(publicUpdateSpecialPermissions);\nexport const removeSpecialPermissions: MaybeContext<\n BuildRESTFunction<typeof publicRemoveSpecialPermissions> &\n typeof publicRemoveSpecialPermissions\n> = /*#__PURE__*/ createRESTModule(publicRemoveSpecialPermissions);\nexport const getMyPermissions: MaybeContext<\n BuildRESTFunction<typeof publicGetMyPermissions> &\n typeof publicGetMyPermissions\n> = /*#__PURE__*/ createRESTModule(publicGetMyPermissions);\n\nexport {\n AccessLevel,\n Access,\n SubjectType,\n SubjectContextType,\n SimpleConditionOperator,\n JoinedConditionOperator,\n Effect,\n PolicyType,\n PolicyOwnerType,\n} from './data-v1-data-permissions-permissions.universal.js';\nexport {\n DataPermissions,\n SpecialPermissions,\n SpecialPermissionsSubjectOneOf,\n GetPermissionsRequest,\n GetPermissionsResponse,\n UpdatePermissionsRequest,\n UpdatePermissionsResponse,\n AddSpecialPermissionsRequest,\n AddSpecialPermissionsResponse,\n UpdateSpecialPermissionsRequest,\n UpdateSpecialPermissionsResponse,\n RemoveSpecialPermissionsRequest,\n RemoveSpecialPermissionsResponse,\n GetMyPermissionsRequest,\n GetMyPermissionsResponse,\n MigrateCustomRolesRequest,\n MigrateCustomRolesResponse,\n PolicyAssignmentsUpdated,\n PolicyAssignmentsUpdatedEventOneOf,\n PolicyAssigned,\n Subject,\n SubjectContext,\n PolicyAssignment,\n ResourcePath,\n Resource,\n PolicyCondition,\n ConditionType,\n ConditionTypeOfOneOf,\n SimpleCondition,\n SimpleConditionValue,\n SimpleConditionValueValueOneOf,\n JoinedCondition,\n EnvironmentCondition,\n EnvironmentConditionConditionOneOf,\n ExperimentCondition,\n Condition,\n ConditionOperator,\n ConditionOperatorOperatorsOneOf,\n EqualOperator,\n ConditionValue,\n ConditionValueValueOneOf,\n LikeOperator,\n ExperimentOperator,\n DependOnOperator,\n PolicyUnassigned,\n PolicyAssignmentUpdated,\n Empty,\n PolicyAuthorizationDataUpdated,\n PolicyStatement,\n PolicyOwner,\n DomainEvent,\n DomainEventBodyOneOf,\n EntityCreatedEvent,\n RestoreInfo,\n EntityUpdatedEvent,\n EntityDeletedEvent,\n ActionEvent,\n AddSpecialPermissionsOptions,\n UpdateSpecialPermissions,\n} from './data-v1-data-permissions-permissions.universal.js';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,+BAAAA;AAAA,EAAA,wBAAAC;AAAA,EAAA,sBAAAC;AAAA,EAAA,gCAAAC;AAAA,EAAA,yBAAAC;AAAA,EAAA,gCAAAC;AAAA;AAAA;;;ACAA,6BAAoD;AACpD,oCAGO;;;ACJP,0BAAkC;AAClC,IAAAC,uBAA2B;AAI3B,SAAS,sDACP,MACA;AACA,QAAM,mBAAmB;AAAA,IACvB,wBAAwB;AAAA,MACtB;AAAA,QACE,SAAS;AAAA,QACT,UAAU;AAAA,MACZ;AAAA,IACF;AAAA,IACA,wBAAwB;AAAA,MACtB;AAAA,QACE,SAAS;AAAA,QACT,UAAU;AAAA,MACZ;AAAA,IACF;AAAA,IACA,wBAAwB;AAAA,MACtB;AAAA,QACE,SAAS;AAAA,QACT,UAAU;AAAA,MACZ;AAAA,IACF;AAAA,IACA,kBAAkB;AAAA,MAChB;AAAA,QACE,SAAS;AAAA,QACT,UAAU;AAAA,MACZ;AAAA,IACF;AAAA,EACF;AAEA,aAAO,iCAAW,OAAO,OAAO,MAAM,EAAE,iBAAiB,CAAC,CAAC;AAC7D;AAEA,IAAM,eAAe;AAGd,SAAS,eAAe,SAA6C;AAC1E,WAAS,iBAAiB,EAAE,KAAK,GAAQ;AACvC,UAAM,WAAW;AAAA,MACf,YAAY;AAAA,MACZ,QAAQ;AAAA,MACR,WACE;AAAA,MACF,aAAa;AAAA,MACb,KAAK,sDAAsD;AAAA,QACzD,WAAW;AAAA,QACX,MAAM;AAAA,QACN;AAAA,MACF,CAAC;AAAA,MACD,YAAQ,uCAAkB,OAAO;AAAA,IACnC;AAEA,WAAO;AAAA,EACT;AAEA,SAAO;AACT;AAOO,SAAS,kBAAkB,SAA6C;AAC7E,WAAS,oBAAoB,EAAE,KAAK,GAAQ;AAC1C,UAAM,WAAW;AAAA,MACf,YAAY;AAAA,MACZ,QAAQ;AAAA,MACR,WACE;AAAA,MACF,aAAa;AAAA,MACb,KAAK,sDAAsD;AAAA,QACzD,WAAW;AAAA,QACX,MAAM;AAAA,QACN;AAAA,MACF,CAAC;AAAA,MACD,MAAM;AAAA,IACR;AAEA,WAAO;AAAA,EACT;AAEA,SAAO;AACT;AAOO,SAAS,sBACd,SAC4B;AAC5B,WAAS,wBAAwB,EAAE,KAAK,GAAQ;AAC9C,UAAM,WAAW;AAAA,MACf,YAAY;AAAA,MACZ,QAAQ;AAAA,MACR,WACE;AAAA,MACF,aAAa;AAAA,MACb,KAAK,sDAAsD;AAAA,QACzD,WAAW;AAAA,QACX,MAAM;AAAA,QACN;AAAA,MACF,CAAC;AAAA,MACD,MAAM;AAAA,IACR;AAEA,WAAO;AAAA,EACT;AAEA,SAAO;AACT;AAMO,SAAS,yBACd,SAC4B;AAC5B,WAAS,2BAA2B,EAAE,KAAK,GAAQ;AACjD,UAAM,WAAW;AAAA,MACf,YAAY;AAAA,MACZ,QAAQ;AAAA,MACR,WACE;AAAA,MACF,aAAa;AAAA,MACb,KAAK,sDAAsD;AAAA,QACzD,WAAW;AAAA,QACX,MAAM;AAAA,QACN;AAAA,MACF,CAAC;AAAA,MACD,MAAM;AAAA,IACR;AAEA,WAAO;AAAA,EACT;AAEA,SAAO;AACT;AAGO,SAAS,yBACd,SAC4B;AAC5B,WAAS,2BAA2B,EAAE,KAAK,GAAQ;AACjD,UAAM,WAAW;AAAA,MACf,YAAY;AAAA,MACZ,QAAQ;AAAA,MACR,WACE;AAAA,MACF,aAAa;AAAA,MACb,KAAK,sDAAsD;AAAA,QACzD,WAAW;AAAA,QACX,MAAM;AAAA,QACN;AAAA,MACF,CAAC;AAAA,MACD,YAAQ,uCAAkB,OAAO;AAAA,IACnC;AAEA,WAAO;AAAA,EACT;AAEA,SAAO;AACT;AAGO,SAAS,iBAAiB,SAA6C;AAC5E,WAAS,mBAAmB,EAAE,KAAK,GAAQ;AACzC,UAAM,WAAW;AAAA,MACf,YAAY;AAAA,MACZ,QAAQ;AAAA,MACR,WACE;AAAA,MACF,aAAa;AAAA,MACb,KAAK,sDAAsD;AAAA,QACzD,WAAW;AAAA,QACX,MAAM;AAAA,QACN;AAAA,MACF,CAAC;AAAA,MACD,YAAQ,uCAAkB,OAAO;AAAA,IACnC;AAEA,WAAO;AAAA,EACT;AAEA,SAAO;AACT;;;AD/JO,IAAK,cAAL,kBAAKC,iBAAL;AAEL,EAAAA,aAAA,aAAU;AAEV,EAAAA,aAAA,YAAS;AAET,EAAAA,aAAA,iBAAc;AAEd,EAAAA,aAAA,wBAAqB;AAErB,EAAAA,aAAA,gBAAa;AAEb,EAAAA,aAAA,gBAAa;AAZH,SAAAA;AAAA,GAAA;AAuEL,IAAK,SAAL,kBAAKC,YAAL;AAEL,EAAAA,QAAA,iBAAc;AAEd,EAAAA,QAAA,aAAU;AAJA,SAAAA;AAAA,GAAA;AA6HL,IAAK,cAAL,kBAAKC,iBAAL;AACL,EAAAA,aAAA,aAAU;AACV,EAAAA,aAAA,aAAU;AACV,EAAAA,aAAA,UAAO;AACP,EAAAA,aAAA,gBAAa;AACb,EAAAA,aAAA,kBAAe;AACf,EAAAA,aAAA,mBAAgB;AAChB,EAAAA,aAAA,kBAAe;AACf,EAAAA,aAAA,mBAAgB;AAChB,EAAAA,aAAA,aAAU;AATA,SAAAA;AAAA,GAAA;AA8BL,IAAK,qBAAL,kBAAKC,wBAAL;AACL,EAAAA,oBAAA,iBAAc;AACd,EAAAA,oBAAA,aAAU;AACV,EAAAA,oBAAA,iBAAc;AAHJ,SAAAA;AAAA,GAAA;AAsFL,IAAK,0BAAL,kBAAKC,6BAAL;AACL,EAAAA,yBAAA,uBAAoB;AACpB,EAAAA,yBAAA,WAAQ;AAFE,SAAAA;AAAA,GAAA;AAkBL,IAAK,0BAAL,kBAAKC,6BAAL;AACL,EAAAA,yBAAA,qBAAkB;AAClB,EAAAA,yBAAA,QAAK;AACL,EAAAA,yBAAA,SAAM;AAHI,SAAAA;AAAA,GAAA;AAyIL,IAAK,SAAL,kBAAKC,YAAL;AACL,EAAAA,QAAA,oBAAiB;AACjB,EAAAA,QAAA,WAAQ;AACR,EAAAA,QAAA,UAAO;AAHG,SAAAA;AAAA,GAAA;AASL,IAAK,aAAL,kBAAKC,gBAAL;AACL,EAAAA,YAAA,oBAAiB;AACjB,EAAAA,YAAA,gBAAa;AACb,EAAAA,YAAA,YAAS;AACT,EAAAA,YAAA,mBAAgB;AAJN,SAAAA;AAAA,GAAA;AAoBL,IAAK,kBAAL,kBAAKC,qBAAL;AACL,EAAAA,iBAAA,kBAAe;AACf,EAAAA,iBAAA,SAAM;AACN,EAAAA,iBAAA,iBAAc;AAHJ,SAAAA;AAAA,GAAA;AAmGZ,eAAsBC,gBACpB,kBAQA;AAEA,QAAM,EAAE,YAAY,YAAY,IAAI,UAAU,CAAC;AAK/C,QAAM,cAAU,qEAAsC;AAAA,IACpD;AAAA,EACF,CAAC;AAED,QAAM,UAA6C,eAAe,OAAO;AAEzE,eAAa,aAAa;AAC1B,MAAI;AACF,UAAM,SAAS,MAAM,WAAW,QAAQ,OAAO;AAC/C,iBAAa,YAAY,MAAM;AAE/B,eAAO,uEAAwC,OAAO,IAAI;AAAA,EAC5D,SAAS,KAAU;AACjB,UAAM,uBAAmB,uBAAAC;AAAA,MACvB;AAAA,MACA;AAAA,QACE,wBAAwB,CAAC;AAAA,QACzB,0BAA0B,EAAE,kBAAkB,OAAO;AAAA,QACrD,yBAAyB;AAAA,MAC3B;AAAA,MACA,CAAC,kBAAkB;AAAA,IACrB;AACA,iBAAa,UAAU,GAAG;AAE1B,UAAM;AAAA,EACR;AACF;AAmBA,eAAsBC,mBACpB,iBAWA;AAEA,QAAM,EAAE,YAAY,YAAY,IAAI,UAAU,CAAC;AAK/C,QAAM,cAAU,qEAAsC;AAAA,IACpD;AAAA,EACF,CAAC;AAED,QAAM,UAA6C,kBAAkB,OAAO;AAE5E,eAAa,aAAa;AAC1B,MAAI;AACF,UAAM,SAAS,MAAM,WAAW,QAAQ,OAAO;AAC/C,iBAAa,YAAY,MAAM;AAE/B,eAAO,uEAAwC,OAAO,IAAI;AAAA,EAC5D,SAAS,KAAU;AACjB,UAAM,uBAAmB,uBAAAD;AAAA,MACvB;AAAA,MACA;AAAA,QACE,wBAAwB,CAAC;AAAA,QACzB,0BAA0B,EAAE,iBAAiB,OAAO;AAAA,QACpD,yBAAyB;AAAA,MAC3B;AAAA,MACA,CAAC,iBAAiB;AAAA,IACpB;AACA,iBAAa,UAAU,GAAG;AAE1B,UAAM;AAAA,EACR;AACF;AAiBA,eAAsBE,uBACpB,kBACA,SAYA;AAEA,QAAM,EAAE,YAAY,YAAY,IAAI,UAAU,CAAC;AAK/C,QAAM,cAAU,qEAAsC;AAAA,IACpD;AAAA,IACA,oBAAoB,SAAS;AAAA,EAC/B,CAAC;AAED,QAAM,UAC+B,sBAAsB,OAAO;AAElE,eAAa,aAAa;AAC1B,MAAI;AACF,UAAM,SAAS,MAAM,WAAW,QAAQ,OAAO;AAC/C,iBAAa,YAAY,MAAM;AAE/B,eAAO,uEAAwC,OAAO,IAAI;AAAA,EAC5D,SAAS,KAAU;AACjB,UAAM,uBAAmB,uBAAAF;AAAA,MACvB;AAAA,MACA;AAAA,QACE,wBAAwB,CAAC;AAAA,QACzB,0BAA0B;AAAA,UACxB,kBAAkB;AAAA,UAClB,oBAAoB;AAAA,QACtB;AAAA,QACA,yBAAyB;AAAA,MAC3B;AAAA,MACA,CAAC,oBAAoB,SAAS;AAAA,IAChC;AACA,iBAAa,UAAU,GAAG;AAE1B,UAAM;AAAA,EACR;AACF;AAmBA,eAAsBG,0BACpB,KACA,oBAYA;AAEA,QAAM,EAAE,YAAY,YAAY,IAAI,UAAU,CAAC;AAK/C,QAAM,cAAU,qEAAsC;AAAA,IACpD,oBAAoB,EAAE,GAAG,oBAAoB,IAAI,IAAI;AAAA,EACvD,CAAC;AAED,QAAM,UAC+B,yBAAyB,OAAO;AAErE,eAAa,aAAa;AAC1B,MAAI;AACF,UAAM,SAAS,MAAM,WAAW,QAAQ,OAAO;AAC/C,iBAAa,YAAY,MAAM;AAE/B,eAAO,uEAAwC,OAAO,IAAI;AAAA,EAC5D,SAAS,KAAU;AACjB,UAAM,uBAAmB,uBAAAH;AAAA,MACvB;AAAA,MACA;AAAA,QACE,wBAAwB,EAAE,oBAAoB,OAAO;AAAA,QACrD,0BAA0B,EAAE,yBAAyB,OAAO;AAAA,QAC5D,yBAAyB;AAAA,MAC3B;AAAA,MACA,CAAC,OAAO,oBAAoB;AAAA,IAC9B;AACA,iBAAa,UAAU,GAAG;AAE1B,UAAM;AAAA,EACR;AACF;AAyCA,eAAsBI,0BACpB,sBACe;AAEf,QAAM,EAAE,YAAY,YAAY,IAAI,UAAU,CAAC;AAK/C,QAAM,cAAU,qEAAsC;AAAA,IACpD;AAAA,EACF,CAAC;AAED,QAAM,UAC+B,yBAAyB,OAAO;AAErE,eAAa,aAAa;AAC1B,MAAI;AACF,UAAM,SAAS,MAAM,WAAW,QAAQ,OAAO;AAC/C,iBAAa,YAAY,MAAM;AAAA,EACjC,SAAS,KAAU;AACjB,UAAM,uBAAmB,uBAAAJ;AAAA,MACvB;AAAA,MACA;AAAA,QACE,wBAAwB,CAAC;AAAA,QACzB,0BAA0B,EAAE,sBAAsB,OAAO;AAAA,QACzD,yBAAyB;AAAA,MAC3B;AAAA,MACA,CAAC,sBAAsB;AAAA,IACzB;AACA,iBAAa,UAAU,GAAG;AAE1B,UAAM;AAAA,EACR;AACF;AAYA,eAAsBK,kBACpB,kBAMA;AAEA,QAAM,EAAE,YAAY,YAAY,IAAI,UAAU,CAAC;AAK/C,QAAM,cAAU,qEAAsC;AAAA,IACpD;AAAA,EACF,CAAC;AAED,QAAM,UAA6C,iBAAiB,OAAO;AAE3E,eAAa,aAAa;AAC1B,MAAI;AACF,UAAM,SAAS,MAAM,WAAW,QAAQ,OAAO;AAC/C,iBAAa,YAAY,MAAM;AAE/B,eAAO,uEAAwC,OAAO,IAAI;AAAA,EAC5D,SAAS,KAAU;AACjB,UAAM,uBAAmB,uBAAAL;AAAA,MACvB;AAAA,MACA;AAAA,QACE,wBAAwB,CAAC;AAAA,QACzB,0BAA0B,EAAE,kBAAkB,OAAO;AAAA,QACrD,yBAAyB;AAAA,MAC3B;AAAA,MACA,CAAC,kBAAkB;AAAA,IACrB;AACA,iBAAa,UAAU,GAAG;AAE1B,UAAM;AAAA,EACR;AACF;;;AEl9BO,SAASM,gBACd,YACyB;AACzB,SAAO,CAAC,qBACNA;AAAA,IACE;AAAA;AAAA,IAEA,EAAE,WAAW;AAAA,EACf;AACJ;AAUO,SAASC,mBACd,YAC4B;AAC5B,SAAO,CACL,oBAKAA;AAAA,IACE;AAAA;AAAA,IAEA,EAAE,WAAW;AAAA,EACf;AACJ;AAYO,SAASC,uBACd,YACgC;AAChC,SAAO,CACL,kBACA,YAKAA;AAAA,IACE;AAAA,IACA;AAAA;AAAA,IAEA,EAAE,WAAW;AAAA,EACf;AACJ;AAeO,SAASC,0BACd,YACmC;AACnC,SAAO,CAAC,KAAa,uBACnBA;AAAA,IACE;AAAA,IACA;AAAA;AAAA,IAEA,EAAE,WAAW;AAAA,EACf;AACJ;AAcO,SAASC,0BACd,YACmC;AACnC,SAAO,CAAC,yBACNA;AAAA,IACE;AAAA;AAAA,IAEA,EAAE,WAAW;AAAA,EACf;AACJ;AAUO,SAASC,kBACd,YAC2B;AAC3B,SAAO,CAAC,qBACNA;AAAA,IACE;AAAA;AAAA,IAEA,EAAE,WAAW;AAAA,EACf;AACJ;;;AC5IA,IAAAC,uBAAiC;AAG1B,IAAMC,kBAEK,2DAAiBA,eAAoB;AAChD,IAAMC,qBAGK,2DAAiBA,kBAAuB;AACnD,IAAMC,yBAGK,2DAAiBA,sBAA2B;AACvD,IAAMC,4BAGK,2DAAiBA,yBAA8B;AAC1D,IAAMC,4BAGK,2DAAiBA,yBAA8B;AAC1D,IAAMC,oBAGK,2DAAiBA,iBAAsB;","names":["addSpecialPermissions","getMyPermissions","getPermissions","removeSpecialPermissions","updatePermissions","updateSpecialPermissions","import_rest_modules","AccessLevel","Access","SubjectType","SubjectContextType","SimpleConditionOperator","JoinedConditionOperator","Effect","PolicyType","PolicyOwnerType","getPermissions","sdkTransformError","updatePermissions","addSpecialPermissions","updateSpecialPermissions","removeSpecialPermissions","getMyPermissions","getPermissions","updatePermissions","addSpecialPermissions","updateSpecialPermissions","removeSpecialPermissions","getMyPermissions","import_rest_modules","getPermissions","updatePermissions","addSpecialPermissions","updateSpecialPermissions","removeSpecialPermissions","getMyPermissions"]}
1
+ {"version":3,"sources":["../../index.ts","../../src/data-v1-data-permissions-permissions.universal.ts","../../src/data-v1-data-permissions-permissions.http.ts","../../src/data-v1-data-permissions-permissions.public.ts","../../src/data-v1-data-permissions-permissions.context.ts"],"sourcesContent":["export * from './src/data-v1-data-permissions-permissions.context.js';\n","import { transformError as sdkTransformError } from '@wix/sdk-runtime/transform-error';\nimport {\n renameKeysFromSDKRequestToRESTRequest,\n renameKeysFromRESTResponseToSDKResponse,\n} from '@wix/sdk-runtime/rename-all-nested-keys';\nimport { HttpClient, NonNullablePaths } from '@wix/sdk-types';\nimport * as ambassadorWixDataV1DataPermissions from './data-v1-data-permissions-permissions.http.js';\n\n/**\n * Permissions configuration of a data collection.\n *\n * Describes who can perform certain data operations on a collection.\n */\nexport interface DataPermissions {\n /**\n * Data Collection ID that is subject of these permissions\n * @immutable\n * @maxLength 255\n */\n _id?: string;\n /** Access level for data items read */\n itemRead?: AccessLevelWithLiterals;\n /** Access level for data items insert */\n itemInsert?: AccessLevelWithLiterals;\n /** Access level for data items update */\n itemUpdate?: AccessLevelWithLiterals;\n /** Access level for data items removal */\n itemRemove?: AccessLevelWithLiterals;\n}\n\n/**\n * Describes who can perform certain action.\n * Each level includes all levels below it (except UNDEFINED).\n */\nexport enum AccessLevel {\n /** Not set */\n UNKNOWN = 'UNKNOWN',\n /** Any subject, including visitors */\n ANYONE = 'ANYONE',\n /** Any signed-in user (both site members and collaborators) */\n SITE_MEMBER = 'SITE_MEMBER',\n /** Any signed-in user, but site members only have access to own items */\n SITE_MEMBER_AUTHOR = 'SITE_MEMBER_AUTHOR',\n /** Site collaborator that has a role with CMS Access permission */\n CMS_EDITOR = 'CMS_EDITOR',\n /** CMS administrators and users or roles granted with special access */\n PRIVILEGED = 'PRIVILEGED',\n}\n\n/** @enumType */\nexport type AccessLevelWithLiterals =\n | AccessLevel\n | 'UNKNOWN'\n | 'ANYONE'\n | 'SITE_MEMBER'\n | 'SITE_MEMBER_AUTHOR'\n | 'CMS_EDITOR'\n | 'PRIVILEGED';\n\n/** Special access granted to user or role */\nexport interface SpecialPermissions extends SpecialPermissionsSubjectOneOf {\n /**\n * User ID that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n userId?: string;\n /**\n * Policy ID of (custom) role that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n policyId?: string;\n /**\n * ID of this special access, so it can be managed separately\n * @format GUID\n * @readonly\n */\n _id?: string;\n /** If data item read is allowed */\n itemRead?: AccessWithLiterals;\n /** If data item insert is allowed */\n itemInsert?: AccessWithLiterals;\n /** If data item update is allowed */\n itemUpdate?: AccessWithLiterals;\n /** If data item remove is allowed */\n itemRemove?: AccessWithLiterals;\n}\n\n/** @oneof */\nexport interface SpecialPermissionsSubjectOneOf {\n /**\n * User ID that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n userId?: string;\n /**\n * Policy ID of (custom) role that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n policyId?: string;\n}\n\nexport enum Access {\n /** Action is not specifically allowed, but can be allowed by top-level permissions */\n UNSPECIFIED = 'UNSPECIFIED',\n /** Action is specifically allowed */\n ALLOWED = 'ALLOWED',\n}\n\n/** @enumType */\nexport type AccessWithLiterals = Access | 'UNSPECIFIED' | 'ALLOWED';\n\nexport interface GetPermissionsRequest {\n /**\n * Data Collection ID to get permissions for\n * @maxLength 256\n */\n dataCollectionId: string;\n}\n\nexport interface GetPermissionsResponse {\n /** Requested data permissions */\n dataPermissions?: DataPermissions;\n}\n\nexport interface UpdatePermissionsRequest {\n /** Data permissions to update */\n dataPermissions: DataPermissions;\n}\n\nexport interface UpdatePermissionsResponse {\n /** Updated data permissions */\n dataPermissions?: DataPermissions;\n}\n\nexport interface AddSpecialPermissionsRequest {\n /**\n * Data Collection ID to add special permission for\n * @maxLength 256\n */\n dataCollectionId: string;\n /** Special permissions to add */\n specialPermissions: SpecialPermissions;\n}\n\nexport interface AddSpecialPermissionsResponse {\n /** Added special data permissions */\n specialPermissions?: SpecialPermissions;\n}\n\nexport interface UpdateSpecialPermissionsRequest {\n /** Special permissions to update */\n specialPermissions: SpecialPermissions;\n}\n\nexport interface UpdateSpecialPermissionsResponse {\n /** Updated special data permissions */\n specialPermissions?: SpecialPermissions;\n}\n\nexport interface RemoveSpecialPermissionsRequest {\n /**\n * Special permissions ID to remove\n * @format GUID\n */\n specialPermissionsId: string;\n}\n\nexport interface RemoveSpecialPermissionsResponse {}\n\nexport interface GetMyPermissionsRequest {\n /**\n * Data Collection ID to get permission for\n * @maxLength 256\n */\n dataCollectionId: string;\n}\n\nexport interface GetMyPermissionsResponse {\n /** If data item read is allowed */\n itemRead?: boolean;\n /** If data item insert is allowed */\n itemInsert?: boolean;\n /** If data item update is allowed */\n itemUpdate?: boolean;\n /** If data item remove is allowed */\n itemRemove?: boolean;\n}\n\nexport interface MigrateCustomRolesRequest {\n /**\n * Role ID to update, if empty updates all roles in scope\n * @format GUID\n */\n policyId?: string | null;\n}\n\nexport interface MigrateCustomRolesResponse {}\n\nexport interface PolicyAssignmentsUpdated\n extends PolicyAssignmentsUpdatedEventOneOf {\n policyAssigned?: PolicyAssigned;\n policyUnassigned?: PolicyUnassigned;\n policyAssignmentUpdated?: PolicyAssignmentUpdated;\n}\n\n/** @oneof */\nexport interface PolicyAssignmentsUpdatedEventOneOf {\n policyAssigned?: PolicyAssigned;\n policyUnassigned?: PolicyUnassigned;\n policyAssignmentUpdated?: PolicyAssignmentUpdated;\n}\n\nexport interface PolicyAssigned {\n subject?: Subject;\n assignment?: PolicyAssignment[];\n}\n\nexport interface Subject {\n /** ID of identity assigned to the asset. */\n _id?: string;\n /** Type of identity assigned to the asset. Supported subject types include user IDs, account IDs, and app IDs. */\n subjectType?: SubjectTypeWithLiterals;\n /** Context of identity assigned to the asset. For example, a `subjectType` = `USER` will have `context` = `ACCOUNT`. */\n context?: SubjectContext;\n}\n\nexport enum SubjectType {\n UNKNOWN = 'UNKNOWN',\n ACCOUNT = 'ACCOUNT',\n USER = 'USER',\n USER_GROUP = 'USER_GROUP',\n MEMBER_GROUP = 'MEMBER_GROUP',\n VISITOR_GROUP = 'VISITOR_GROUP',\n EXTERNAL_APP = 'EXTERNAL_APP',\n ACCOUNT_GROUP = 'ACCOUNT_GROUP',\n WIX_APP = 'WIX_APP',\n}\n\n/** @enumType */\nexport type SubjectTypeWithLiterals =\n | SubjectType\n | 'UNKNOWN'\n | 'ACCOUNT'\n | 'USER'\n | 'USER_GROUP'\n | 'MEMBER_GROUP'\n | 'VISITOR_GROUP'\n | 'EXTERNAL_APP'\n | 'ACCOUNT_GROUP'\n | 'WIX_APP';\n\nexport interface SubjectContext {\n _id?: string;\n contextType?: SubjectContextTypeWithLiterals;\n}\n\nexport enum SubjectContextType {\n UNKNOWN_CTX = 'UNKNOWN_CTX',\n ORG_CTX = 'ORG_CTX',\n ACCOUNT_CTX = 'ACCOUNT_CTX',\n}\n\n/** @enumType */\nexport type SubjectContextTypeWithLiterals =\n | SubjectContextType\n | 'UNKNOWN_CTX'\n | 'ORG_CTX'\n | 'ACCOUNT_CTX';\n\nexport interface PolicyAssignment {\n policyId?: string;\n resource?: ResourcePath;\n condition?: PolicyCondition;\n assignmentId?: string | null;\n}\n\nexport interface ResourcePath {\n organization?: string | null;\n account?: string | null;\n site?: string | null;\n resource?: Resource;\n}\n\n/**\n * A custom resource. Is used to represent some asset that is not a direct resource context (site or account), but something custom.\n * For example: payment method, blog post, domain, logo.\n */\nexport interface Resource {\n /** The resource id. */\n _id?: string | null;\n /** The resource type */\n type?: string | null;\n}\n\nexport interface PolicyCondition {\n /** The type of the condition */\n condition?: ConditionType;\n}\n\nexport interface ConditionType extends ConditionTypeOfOneOf {\n /** @deprecated */\n simpleCondition?: SimpleCondition;\n /** A logic combination between several conditions, with an operator between them */\n joinedConditions?: JoinedCondition;\n /** @deprecated */\n environmentCondition?: EnvironmentCondition;\n /** A single condition */\n condition?: Condition;\n}\n\n/** @oneof */\nexport interface ConditionTypeOfOneOf {\n /** @deprecated */\n simpleCondition?: SimpleCondition;\n /** A logic combination between several conditions, with an operator between them */\n joinedConditions?: JoinedCondition;\n /** @deprecated */\n environmentCondition?: EnvironmentCondition;\n /** A single condition */\n condition?: Condition;\n}\n\nexport interface SimpleCondition {\n attrName?: string;\n value?: SimpleConditionValue;\n op?: SimpleConditionOperatorWithLiterals;\n conditionModelId?: string;\n}\n\nexport interface SimpleConditionValue extends SimpleConditionValueValueOneOf {\n attrName?: string;\n stringValue?: string;\n boolValue?: boolean;\n}\n\n/** @oneof */\nexport interface SimpleConditionValueValueOneOf {\n attrName?: string;\n stringValue?: string;\n boolValue?: boolean;\n}\n\nexport enum SimpleConditionOperator {\n UNKNOWN_SIMPLE_OP = 'UNKNOWN_SIMPLE_OP',\n EQUAL = 'EQUAL',\n}\n\n/** @enumType */\nexport type SimpleConditionOperatorWithLiterals =\n | SimpleConditionOperator\n | 'UNKNOWN_SIMPLE_OP'\n | 'EQUAL';\n\nexport interface JoinedCondition {\n /** The operator that should be used when evaluating the condition */\n op?: JoinedConditionOperatorWithLiterals;\n /** The conditions that should be evaluated, and then joined using the operator provided */\n conditions?: ConditionType[];\n}\n\nexport enum JoinedConditionOperator {\n UNKNOWN_JOIN_OP = 'UNKNOWN_JOIN_OP',\n OR = 'OR',\n AND = 'AND',\n}\n\n/** @enumType */\nexport type JoinedConditionOperatorWithLiterals =\n | JoinedConditionOperator\n | 'UNKNOWN_JOIN_OP'\n | 'OR'\n | 'AND';\n\nexport interface EnvironmentCondition\n extends EnvironmentConditionConditionOneOf {\n experimentCondition?: ExperimentCondition;\n}\n\n/** @oneof */\nexport interface EnvironmentConditionConditionOneOf {\n experimentCondition?: ExperimentCondition;\n}\n\nexport interface ExperimentCondition {\n spec?: string;\n fallbackValue?: string;\n expectedValue?: string;\n}\n\nexport interface Condition {\n /** The unique identifier of the condition model. Indicates which actions the condition is working on */\n conditionModelId?: string;\n /** The operator that should be evaluated */\n operator?: ConditionOperator;\n}\n\nexport interface ConditionOperator extends ConditionOperatorOperatorsOneOf {\n /** Comparison of equality - will be evaluated to true if the given parties are equal */\n equals?: EqualOperator;\n /** Regex operator - will be evaluated to true if the given value matches the provided regex */\n like?: LikeOperator;\n /** Petri experiment - will be evaluated using petri. */\n experiment?: ExperimentOperator;\n /** Operator that indicates a dependency on another subject being allowed to perform something. */\n dependOn?: DependOnOperator;\n}\n\n/** @oneof */\nexport interface ConditionOperatorOperatorsOneOf {\n /** Comparison of equality - will be evaluated to true if the given parties are equal */\n equals?: EqualOperator;\n /** Regex operator - will be evaluated to true if the given value matches the provided regex */\n like?: LikeOperator;\n /** Petri experiment - will be evaluated using petri. */\n experiment?: ExperimentOperator;\n /** Operator that indicates a dependency on another subject being allowed to perform something. */\n dependOn?: DependOnOperator;\n}\n\nexport interface EqualOperator {\n /** The attribute which should be compared. The attribute will be first evaluated to a value, and then compared the other side (attribute/value) */\n attrName?: string;\n /** The value to compare to. If the two parties are equal - we will return true. */\n value?: ConditionValue;\n}\n\nexport interface ConditionValue extends ConditionValueValueOneOf {\n /** an attribute. We'll first retrieve the value of the attribute (from the request or from pre-indexed values), and then compare to what it needs to be compared with. */\n attrName?: string;\n /** a value with a string type. Will be compared to the attribute provided, and be true only if they match the operator. */\n stringValue?: string;\n /** a value with a boolean type. Will be compared to the attribute provided, and be true only if they match the operator. */\n boolValue?: boolean;\n}\n\n/** @oneof */\nexport interface ConditionValueValueOneOf {\n /** an attribute. We'll first retrieve the value of the attribute (from the request or from pre-indexed values), and then compare to what it needs to be compared with. */\n attrName?: string;\n /** a value with a string type. Will be compared to the attribute provided, and be true only if they match the operator. */\n stringValue?: string;\n /** a value with a boolean type. Will be compared to the attribute provided, and be true only if they match the operator. */\n boolValue?: boolean;\n}\n\nexport interface LikeOperator {\n /** The attribute which should be compared. The attribute will be first evaluated to a value, and then compared the regex values provided. */\n attrName?: string;\n /** The regex values which the attribute value should be evaluated on. If the attribute value matches at least one of the regular expressions provided - we will return true */\n values?: string[];\n}\n\nexport interface ExperimentOperator {\n /** The spec to conduct the experiment on. */\n spec?: string;\n /** The value to use if the experiment could not be conducted */\n fallbackValue?: string;\n /** The expected value of the experiment conduction. If it matches the actual value - true will be returned. Otherwise - false. */\n expectedValue?: string;\n}\n\n/** Implies that the policy takes affect only if the depend on subject is permitted as well. */\nexport interface DependOnOperator {\n /** The subject on which the current entry depends on. If the subject is allowed to perform what the query was about - the condition will be evaluated to true. Otherwise - false */\n dependOnSubject?: Subject;\n}\n\nexport interface PolicyUnassigned {\n subject?: Subject;\n assignment?: PolicyAssignment[];\n}\n\nexport interface PolicyAssignmentUpdated {\n subject?: Subject;\n fromAssignment?: PolicyAssignment[];\n toAssignment?: PolicyAssignment[];\n}\n\nexport interface Empty {}\n\nexport interface PolicyAuthorizationDataUpdated {\n policyId?: string;\n fromPolicyStatements?: PolicyStatement[];\n toPolicyStatements?: PolicyStatement[];\n policyType?: PolicyTypeWithLiterals;\n policyOwner?: PolicyOwner;\n}\n\nexport interface PolicyStatement {\n /** @readonly */\n _id?: string | null;\n permissions?: string[];\n scopes?: string[];\n effect?: EffectWithLiterals;\n condition?: PolicyCondition;\n}\n\nexport enum Effect {\n UNKNOWN_EFFECT = 'UNKNOWN_EFFECT',\n ALLOW = 'ALLOW',\n DENY = 'DENY',\n}\n\n/** @enumType */\nexport type EffectWithLiterals = Effect | 'UNKNOWN_EFFECT' | 'ALLOW' | 'DENY';\n\nexport enum PolicyType {\n UNKNOWN_STATUS = 'UNKNOWN_STATUS',\n PREDEFINED = 'PREDEFINED',\n CUSTOM = 'CUSTOM',\n INLINE_CUSTOM = 'INLINE_CUSTOM',\n}\n\n/** @enumType */\nexport type PolicyTypeWithLiterals =\n | PolicyType\n | 'UNKNOWN_STATUS'\n | 'PREDEFINED'\n | 'CUSTOM'\n | 'INLINE_CUSTOM';\n\nexport interface PolicyOwner {\n type?: PolicyOwnerTypeWithLiterals;\n _id?: string;\n}\n\nexport enum PolicyOwnerType {\n UNKNOWN_TYPE = 'UNKNOWN_TYPE',\n WIX = 'WIX',\n WIX_ACCOUNT = 'WIX_ACCOUNT',\n}\n\n/** @enumType */\nexport type PolicyOwnerTypeWithLiterals =\n | PolicyOwnerType\n | 'UNKNOWN_TYPE'\n | 'WIX'\n | 'WIX_ACCOUNT';\n\nexport interface DomainEvent extends DomainEventBodyOneOf {\n createdEvent?: EntityCreatedEvent;\n updatedEvent?: EntityUpdatedEvent;\n deletedEvent?: EntityDeletedEvent;\n actionEvent?: ActionEvent;\n /** Event ID. With this ID you can easily spot duplicated events and ignore them. */\n _id?: string;\n /**\n * Fully Qualified Domain Name of an entity. This is a unique identifier assigned to the API main business entities.\n * For example, `wix.stores.catalog.product`, `wix.bookings.session`, `wix.payments.transaction`.\n */\n entityFqdn?: string;\n /**\n * Event action name, placed at the top level to make it easier for users to dispatch messages.\n * For example: `created`/`updated`/`deleted`/`started`/`completed`/`email_opened`.\n */\n slug?: string;\n /** ID of the entity associated with the event. */\n entityId?: string;\n /** Event timestamp in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format and UTC time. For example, `2020-04-26T13:57:50.699Z`. */\n eventTime?: Date | null;\n /**\n * Whether the event was triggered as a result of a privacy regulation application\n * (for example, GDPR).\n */\n triggeredByAnonymizeRequest?: boolean | null;\n /** If present, indicates the action that triggered the event. */\n originatedFrom?: string | null;\n /**\n * A sequence number that indicates the order of updates to an entity. For example, if an entity was updated at 16:00 and then again at 16:01, the second update will always have a higher sequence number.\n * You can use this number to make sure you're handling updates in the right order. Just save the latest sequence number on your end and compare it to the one in each new message. If the new message has an older (lower) number, you can safely ignore it.\n */\n entityEventSequence?: string | null;\n}\n\n/** @oneof */\nexport interface DomainEventBodyOneOf {\n createdEvent?: EntityCreatedEvent;\n updatedEvent?: EntityUpdatedEvent;\n deletedEvent?: EntityDeletedEvent;\n actionEvent?: ActionEvent;\n}\n\nexport interface EntityCreatedEvent {\n entity?: string;\n}\n\nexport interface RestoreInfo {\n deletedDate?: Date | null;\n}\n\nexport interface EntityUpdatedEvent {\n /**\n * Since platformized APIs only expose PATCH and not PUT we can't assume that the fields sent from the client are the actual diff.\n * This means that to generate a list of changed fields (as opposed to sent fields) one needs to traverse both objects.\n * We don't want to impose this on all developers and so we leave this traversal to the notification recipients which need it.\n */\n currentEntity?: string;\n}\n\nexport interface EntityDeletedEvent {\n /** Entity that was deleted. */\n deletedEntity?: string | null;\n}\n\nexport interface ActionEvent {\n body?: string;\n}\n\ntype DataPermissionsNonNullablePaths =\n | `_id`\n | `itemRead`\n | `itemInsert`\n | `itemUpdate`\n | `itemRemove`;\n\n/**\n * Returns data permissions for a data collection\n * @param dataCollectionId - Data Collection ID to get permissions for\n * @public\n * @documentationMaturity preview\n * @requiredField dataCollectionId\n * @permissionId WIX_DATA.PERMISSIONS_READ\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.GetPermissions\n */\nexport async function getPermissions(\n dataCollectionId: string\n): Promise<\n NonNullablePaths<\n GetPermissionsResponse,\n {\n [P in DataPermissionsNonNullablePaths]: `dataPermissions.${P}`;\n }[DataPermissionsNonNullablePaths]\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n dataCollectionId: dataCollectionId,\n });\n\n const reqOpts = ambassadorWixDataV1DataPermissions.getPermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { dataCollectionId: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['dataCollectionId']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Updates data permissions for a data collection\n *\n * NOTE that special permissions are not updated using this API, use dedicated methods for it.\n * @param dataPermissions - Data permissions to update\n * @public\n * @documentationMaturity preview\n * @requiredField dataPermissions\n * @requiredField dataPermissions._id\n * @requiredField dataPermissions.itemInsert\n * @requiredField dataPermissions.itemRead\n * @requiredField dataPermissions.itemRemove\n * @requiredField dataPermissions.itemUpdate\n * @permissionId WIX_DATA.PERMISSIONS_UPDATE\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.UpdatePermissions\n */\nexport async function updatePermissions(\n dataPermissions: NonNullablePaths<\n DataPermissions,\n `_id` | `itemInsert` | `itemRead` | `itemRemove` | `itemUpdate`\n >\n): Promise<\n NonNullablePaths<\n UpdatePermissionsResponse,\n {\n [P in DataPermissionsNonNullablePaths]: `dataPermissions.${P}`;\n }[DataPermissionsNonNullablePaths]\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n dataPermissions: dataPermissions,\n });\n\n const reqOpts = ambassadorWixDataV1DataPermissions.updatePermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { dataPermissions: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['dataPermissions']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Adds special data permissions for particular user/group\n * Errors:\n * - `ALREADY_EXISTS` in case if special permission for same subject already exists\n * @param dataCollectionId - Data Collection ID to add special permission for\n * @public\n * @documentationMaturity preview\n * @requiredField dataCollectionId\n * @requiredField options\n * @requiredField options.specialPermissions\n * @permissionId WIX_DATA.PERMISSIONS_UPDATE_SPECIAL\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.AddSpecialPermissions\n */\nexport async function addSpecialPermissions(\n dataCollectionId: string,\n options: NonNullablePaths<AddSpecialPermissionsOptions, `specialPermissions`>\n): Promise<\n NonNullablePaths<\n AddSpecialPermissionsResponse,\n | `specialPermissions.userId`\n | `specialPermissions.policyId`\n | `specialPermissions._id`\n | `specialPermissions.itemRead`\n | `specialPermissions.itemInsert`\n | `specialPermissions.itemUpdate`\n | `specialPermissions.itemRemove`\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[2] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n dataCollectionId: dataCollectionId,\n specialPermissions: options?.specialPermissions,\n });\n\n const reqOpts =\n ambassadorWixDataV1DataPermissions.addSpecialPermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: {\n dataCollectionId: '$[0]',\n specialPermissions: '$[1].specialPermissions',\n },\n singleArgumentUnchanged: false,\n },\n ['dataCollectionId', 'options']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\nexport interface AddSpecialPermissionsOptions {\n /** Special permissions to add */\n specialPermissions: SpecialPermissions;\n}\n\n/**\n * Updates special data permissions for particular user/group.\n * Any omitted permissions will be set to UNSPECIFIED.\n * @param _id - ID of this special access, so it can be managed separately\n * @public\n * @documentationMaturity preview\n * @requiredField _id\n * @requiredField specialPermissions\n * @permissionId WIX_DATA.PERMISSIONS_UPDATE_SPECIAL\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.UpdateSpecialPermissions\n */\nexport async function updateSpecialPermissions(\n _id: string,\n specialPermissions: UpdateSpecialPermissions\n): Promise<\n NonNullablePaths<\n UpdateSpecialPermissionsResponse,\n | `specialPermissions.userId`\n | `specialPermissions.policyId`\n | `specialPermissions._id`\n | `specialPermissions.itemRead`\n | `specialPermissions.itemInsert`\n | `specialPermissions.itemUpdate`\n | `specialPermissions.itemRemove`\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[2] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n specialPermissions: { ...specialPermissions, id: _id },\n });\n\n const reqOpts =\n ambassadorWixDataV1DataPermissions.updateSpecialPermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: { specialPermissions: '$[1]' },\n explicitPathsToArguments: { 'specialPermissions.id': '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['_id', 'specialPermissions']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\nexport interface UpdateSpecialPermissions {\n /**\n * User ID that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n userId?: string;\n /**\n * Policy ID of (custom) role that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n policyId?: string;\n /**\n * ID of this special access, so it can be managed separately\n * @format GUID\n * @readonly\n */\n _id?: string;\n /** If data item read is allowed */\n itemRead?: AccessWithLiterals;\n /** If data item insert is allowed */\n itemInsert?: AccessWithLiterals;\n /** If data item update is allowed */\n itemUpdate?: AccessWithLiterals;\n /** If data item remove is allowed */\n itemRemove?: AccessWithLiterals;\n}\n\n/**\n * Deletes special data permissions for particular user/group\n * @param specialPermissionsId - Special permissions ID to remove\n * @public\n * @documentationMaturity preview\n * @requiredField specialPermissionsId\n * @permissionId WIX_DATA.PERMISSIONS_UPDATE_SPECIAL\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.RemoveSpecialPermissions\n */\nexport async function removeSpecialPermissions(\n specialPermissionsId: string\n): Promise<void> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n specialPermissionsId: specialPermissionsId,\n });\n\n const reqOpts =\n ambassadorWixDataV1DataPermissions.removeSpecialPermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { specialPermissionsId: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['specialPermissionsId']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Returns current user permissions for given data collection\n * @param dataCollectionId - Data Collection ID to get permission for\n * @public\n * @documentationMaturity preview\n * @requiredField dataCollectionId\n * @permissionId WIX_DATA.PERMISSIONS_GET_ALLOWED\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.GetMyPermissions\n */\nexport async function getMyPermissions(\n dataCollectionId: string\n): Promise<\n NonNullablePaths<\n GetMyPermissionsResponse,\n `itemRead` | `itemInsert` | `itemUpdate` | `itemRemove`\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n dataCollectionId: dataCollectionId,\n });\n\n const reqOpts = ambassadorWixDataV1DataPermissions.getMyPermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { dataCollectionId: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['dataCollectionId']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n","import { toURLSearchParams } from '@wix/sdk-runtime/rest-modules';\nimport { resolveUrl } from '@wix/sdk-runtime/rest-modules';\nimport { ResolveUrlOpts } from '@wix/sdk-runtime/rest-modules';\nimport { RequestOptionsFactory } from '@wix/sdk-types';\n\nfunction resolveWixCloudPermissionsV1DataPermissionsServiceUrl(\n opts: Omit<ResolveUrlOpts, 'domainToMappings'>\n) {\n const domainToMappings = {\n 'manage._base_domain_': [\n {\n srcPath: '/_api/cloud-data/v1/permissions',\n destPath: '/v1/permissions',\n },\n ],\n 'editor._base_domain_': [\n {\n srcPath: '/_api/cloud-data/v1/permissions',\n destPath: '/v1/permissions',\n },\n ],\n 'blocks._base_domain_': [\n {\n srcPath: '/_api/cloud-data/v1/permissions',\n destPath: '/v1/permissions',\n },\n ],\n 'create.editorx': [\n {\n srcPath: '/_api/cloud-data/v1/permissions',\n destPath: '/v1/permissions',\n },\n ],\n };\n\n return resolveUrl(Object.assign(opts, { domainToMappings }));\n}\n\nconst PACKAGE_NAME = '@wix/auto_sdk_data_permissions';\n\n/** Returns data permissions for a data collection */\nexport function getPermissions(payload: object): RequestOptionsFactory<any> {\n function __getPermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'GET' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.GetPermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n };\n\n return metadata;\n }\n\n return __getPermissions;\n}\n\n/**\n * Updates data permissions for a data collection\n *\n * NOTE that special permissions are not updated using this API, use dedicated methods for it.\n */\nexport function updatePermissions(payload: object): RequestOptionsFactory<any> {\n function __updatePermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'POST' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.UpdatePermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions',\n data: payload,\n host,\n }),\n data: payload,\n };\n\n return metadata;\n }\n\n return __updatePermissions;\n}\n\n/**\n * Adds special data permissions for particular user/group\n * Errors:\n * - `ALREADY_EXISTS` in case if special permission for same subject already exists\n */\nexport function addSpecialPermissions(\n payload: object\n): RequestOptionsFactory<any> {\n function __addSpecialPermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'POST' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.AddSpecialPermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions/special',\n data: payload,\n host,\n }),\n data: payload,\n };\n\n return metadata;\n }\n\n return __addSpecialPermissions;\n}\n\n/**\n * Updates special data permissions for particular user/group.\n * Any omitted permissions will be set to UNSPECIFIED.\n */\nexport function updateSpecialPermissions(\n payload: object\n): RequestOptionsFactory<any> {\n function __updateSpecialPermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'POST' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.UpdateSpecialPermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions/special/{specialPermissions.id}',\n data: payload,\n host,\n }),\n data: payload,\n };\n\n return metadata;\n }\n\n return __updateSpecialPermissions;\n}\n\n/** Deletes special data permissions for particular user/group */\nexport function removeSpecialPermissions(\n payload: object\n): RequestOptionsFactory<any> {\n function __removeSpecialPermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'DELETE' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.RemoveSpecialPermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions/special/{specialPermissionsId}',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n };\n\n return metadata;\n }\n\n return __removeSpecialPermissions;\n}\n\n/** Returns current user permissions for given data collection */\nexport function getMyPermissions(payload: object): RequestOptionsFactory<any> {\n function __getMyPermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'GET' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.GetMyPermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions/current',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n };\n\n return metadata;\n }\n\n return __getMyPermissions;\n}\n","import { HttpClient, NonNullablePaths } from '@wix/sdk-types';\nimport {\n AddSpecialPermissionsOptions,\n AddSpecialPermissionsResponse,\n DataPermissions,\n GetMyPermissionsResponse,\n GetPermissionsResponse,\n UpdatePermissionsResponse,\n UpdateSpecialPermissions,\n UpdateSpecialPermissionsResponse,\n addSpecialPermissions as universalAddSpecialPermissions,\n getMyPermissions as universalGetMyPermissions,\n getPermissions as universalGetPermissions,\n removeSpecialPermissions as universalRemoveSpecialPermissions,\n updatePermissions as universalUpdatePermissions,\n updateSpecialPermissions as universalUpdateSpecialPermissions,\n} from './data-v1-data-permissions-permissions.universal.js';\n\nexport const __metadata = { PACKAGE_NAME: '@wix/data' };\n\nexport function getPermissions(\n httpClient: HttpClient\n): GetPermissionsSignature {\n return (dataCollectionId: string) =>\n universalGetPermissions(\n dataCollectionId,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface GetPermissionsSignature {\n /**\n * Returns data permissions for a data collection\n * @param - Data Collection ID to get permissions for\n */\n (dataCollectionId: string): Promise<GetPermissionsResponse>;\n}\n\nexport function updatePermissions(\n httpClient: HttpClient\n): UpdatePermissionsSignature {\n return (\n dataPermissions: NonNullablePaths<\n DataPermissions,\n `_id` | `itemInsert` | `itemRead` | `itemRemove` | `itemUpdate`\n >\n ) =>\n universalUpdatePermissions(\n dataPermissions,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface UpdatePermissionsSignature {\n /**\n * Updates data permissions for a data collection\n *\n * NOTE that special permissions are not updated using this API, use dedicated methods for it.\n * @param - Data permissions to update\n */\n (dataPermissions: DataPermissions): Promise<UpdatePermissionsResponse>;\n}\n\nexport function addSpecialPermissions(\n httpClient: HttpClient\n): AddSpecialPermissionsSignature {\n return (\n dataCollectionId: string,\n options: NonNullablePaths<\n AddSpecialPermissionsOptions,\n `specialPermissions`\n >\n ) =>\n universalAddSpecialPermissions(\n dataCollectionId,\n options,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface AddSpecialPermissionsSignature {\n /**\n * Adds special data permissions for particular user/group\n * Errors:\n * - `ALREADY_EXISTS` in case if special permission for same subject already exists\n * @param - Data Collection ID to add special permission for\n */\n (\n dataCollectionId: string,\n options: AddSpecialPermissionsOptions\n ): Promise<AddSpecialPermissionsResponse>;\n}\n\nexport function updateSpecialPermissions(\n httpClient: HttpClient\n): UpdateSpecialPermissionsSignature {\n return (_id: string, specialPermissions: UpdateSpecialPermissions) =>\n universalUpdateSpecialPermissions(\n _id,\n specialPermissions,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface UpdateSpecialPermissionsSignature {\n /**\n * Updates special data permissions for particular user/group.\n * Any omitted permissions will be set to UNSPECIFIED.\n * @param - ID of this special access, so it can be managed separately\n */\n (\n _id: string,\n specialPermissions: UpdateSpecialPermissions\n ): Promise<UpdateSpecialPermissionsResponse>;\n}\n\nexport function removeSpecialPermissions(\n httpClient: HttpClient\n): RemoveSpecialPermissionsSignature {\n return (specialPermissionsId: string) =>\n universalRemoveSpecialPermissions(\n specialPermissionsId,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface RemoveSpecialPermissionsSignature {\n /**\n * Deletes special data permissions for particular user/group\n * @param - Special permissions ID to remove\n */\n (specialPermissionsId: string): Promise<void>;\n}\n\nexport function getMyPermissions(\n httpClient: HttpClient\n): GetMyPermissionsSignature {\n return (dataCollectionId: string) =>\n universalGetMyPermissions(\n dataCollectionId,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface GetMyPermissionsSignature {\n /**\n * Returns current user permissions for given data collection\n * @param - Data Collection ID to get permission for\n */\n (dataCollectionId: string): Promise<GetMyPermissionsResponse>;\n}\n\nexport {\n Access,\n AccessLevel,\n ActionEvent,\n AddSpecialPermissionsOptions,\n AddSpecialPermissionsRequest,\n AddSpecialPermissionsResponse,\n Condition,\n ConditionOperator,\n ConditionOperatorOperatorsOneOf,\n ConditionType,\n ConditionTypeOfOneOf,\n ConditionValue,\n ConditionValueValueOneOf,\n DataPermissions,\n DependOnOperator,\n DomainEvent,\n DomainEventBodyOneOf,\n Effect,\n Empty,\n EntityCreatedEvent,\n EntityDeletedEvent,\n EntityUpdatedEvent,\n EnvironmentCondition,\n EnvironmentConditionConditionOneOf,\n EqualOperator,\n ExperimentCondition,\n ExperimentOperator,\n GetMyPermissionsRequest,\n GetMyPermissionsResponse,\n GetPermissionsRequest,\n GetPermissionsResponse,\n JoinedCondition,\n JoinedConditionOperator,\n LikeOperator,\n MigrateCustomRolesRequest,\n MigrateCustomRolesResponse,\n PolicyAssigned,\n PolicyAssignment,\n PolicyAssignmentUpdated,\n PolicyAssignmentsUpdated,\n PolicyAssignmentsUpdatedEventOneOf,\n PolicyAuthorizationDataUpdated,\n PolicyCondition,\n PolicyOwner,\n PolicyOwnerType,\n PolicyStatement,\n PolicyType,\n PolicyUnassigned,\n RemoveSpecialPermissionsRequest,\n RemoveSpecialPermissionsResponse,\n Resource,\n ResourcePath,\n RestoreInfo,\n SimpleCondition,\n SimpleConditionOperator,\n SimpleConditionValue,\n SimpleConditionValueValueOneOf,\n SpecialPermissions,\n SpecialPermissionsSubjectOneOf,\n Subject,\n SubjectContext,\n SubjectContextType,\n SubjectType,\n UpdatePermissionsRequest,\n UpdatePermissionsResponse,\n UpdateSpecialPermissions,\n UpdateSpecialPermissionsRequest,\n UpdateSpecialPermissionsResponse,\n} from './data-v1-data-permissions-permissions.universal.js';\n","import {\n getPermissions as publicGetPermissions,\n updatePermissions as publicUpdatePermissions,\n addSpecialPermissions as publicAddSpecialPermissions,\n updateSpecialPermissions as publicUpdateSpecialPermissions,\n removeSpecialPermissions as publicRemoveSpecialPermissions,\n getMyPermissions as publicGetMyPermissions,\n} from './data-v1-data-permissions-permissions.public.js';\nimport { createRESTModule } from '@wix/sdk-runtime/rest-modules';\nimport { BuildRESTFunction, MaybeContext } from '@wix/sdk-types';\n\nexport const getPermissions: MaybeContext<\n BuildRESTFunction<typeof publicGetPermissions> & typeof publicGetPermissions\n> = /*#__PURE__*/ createRESTModule(publicGetPermissions);\nexport const updatePermissions: MaybeContext<\n BuildRESTFunction<typeof publicUpdatePermissions> &\n typeof publicUpdatePermissions\n> = /*#__PURE__*/ createRESTModule(publicUpdatePermissions);\nexport const addSpecialPermissions: MaybeContext<\n BuildRESTFunction<typeof publicAddSpecialPermissions> &\n typeof publicAddSpecialPermissions\n> = /*#__PURE__*/ createRESTModule(publicAddSpecialPermissions);\nexport const updateSpecialPermissions: MaybeContext<\n BuildRESTFunction<typeof publicUpdateSpecialPermissions> &\n typeof publicUpdateSpecialPermissions\n> = /*#__PURE__*/ createRESTModule(publicUpdateSpecialPermissions);\nexport const removeSpecialPermissions: MaybeContext<\n BuildRESTFunction<typeof publicRemoveSpecialPermissions> &\n typeof publicRemoveSpecialPermissions\n> = /*#__PURE__*/ createRESTModule(publicRemoveSpecialPermissions);\nexport const getMyPermissions: MaybeContext<\n BuildRESTFunction<typeof publicGetMyPermissions> &\n typeof publicGetMyPermissions\n> = /*#__PURE__*/ createRESTModule(publicGetMyPermissions);\n\nexport {\n AccessLevel,\n Access,\n SubjectType,\n SubjectContextType,\n SimpleConditionOperator,\n JoinedConditionOperator,\n Effect,\n PolicyType,\n PolicyOwnerType,\n} from './data-v1-data-permissions-permissions.universal.js';\nexport {\n DataPermissions,\n SpecialPermissions,\n SpecialPermissionsSubjectOneOf,\n GetPermissionsRequest,\n GetPermissionsResponse,\n UpdatePermissionsRequest,\n UpdatePermissionsResponse,\n AddSpecialPermissionsRequest,\n AddSpecialPermissionsResponse,\n UpdateSpecialPermissionsRequest,\n UpdateSpecialPermissionsResponse,\n RemoveSpecialPermissionsRequest,\n RemoveSpecialPermissionsResponse,\n GetMyPermissionsRequest,\n GetMyPermissionsResponse,\n MigrateCustomRolesRequest,\n MigrateCustomRolesResponse,\n PolicyAssignmentsUpdated,\n PolicyAssignmentsUpdatedEventOneOf,\n PolicyAssigned,\n Subject,\n SubjectContext,\n PolicyAssignment,\n ResourcePath,\n Resource,\n PolicyCondition,\n ConditionType,\n ConditionTypeOfOneOf,\n SimpleCondition,\n SimpleConditionValue,\n SimpleConditionValueValueOneOf,\n JoinedCondition,\n EnvironmentCondition,\n EnvironmentConditionConditionOneOf,\n ExperimentCondition,\n Condition,\n ConditionOperator,\n ConditionOperatorOperatorsOneOf,\n EqualOperator,\n ConditionValue,\n ConditionValueValueOneOf,\n LikeOperator,\n ExperimentOperator,\n DependOnOperator,\n PolicyUnassigned,\n PolicyAssignmentUpdated,\n Empty,\n PolicyAuthorizationDataUpdated,\n PolicyStatement,\n PolicyOwner,\n DomainEvent,\n DomainEventBodyOneOf,\n EntityCreatedEvent,\n RestoreInfo,\n EntityUpdatedEvent,\n EntityDeletedEvent,\n ActionEvent,\n AddSpecialPermissionsOptions,\n UpdateSpecialPermissions,\n} from './data-v1-data-permissions-permissions.universal.js';\n"],"mappings":"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","names":["addSpecialPermissions","getMyPermissions","getPermissions","removeSpecialPermissions","updatePermissions","updateSpecialPermissions","import_rest_modules","AccessLevel","Access","SubjectType","SubjectContextType","SimpleConditionOperator","JoinedConditionOperator","Effect","PolicyType","PolicyOwnerType","getPermissions","sdkTransformError","updatePermissions","addSpecialPermissions","updateSpecialPermissions","removeSpecialPermissions","getMyPermissions","getPermissions","updatePermissions","addSpecialPermissions","updateSpecialPermissions","removeSpecialPermissions","getMyPermissions","import_rest_modules","getPermissions","updatePermissions","addSpecialPermissions","updateSpecialPermissions","removeSpecialPermissions","getMyPermissions"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/data-v1-data-permissions-permissions.universal.ts","../../src/data-v1-data-permissions-permissions.http.ts","../../src/data-v1-data-permissions-permissions.public.ts","../../src/data-v1-data-permissions-permissions.context.ts"],"sourcesContent":["import { transformError as sdkTransformError } from '@wix/sdk-runtime/transform-error';\nimport {\n renameKeysFromSDKRequestToRESTRequest,\n renameKeysFromRESTResponseToSDKResponse,\n} from '@wix/sdk-runtime/rename-all-nested-keys';\nimport { HttpClient, NonNullablePaths } from '@wix/sdk-types';\nimport * as ambassadorWixDataV1DataPermissions from './data-v1-data-permissions-permissions.http.js';\n\n/**\n * Permissions configuration of a data collection.\n *\n * Describes who can perform certain data operations on a collection.\n */\nexport interface DataPermissions {\n /**\n * Data Collection ID that is subject of these permissions\n * @immutable\n * @maxLength 255\n */\n _id?: string;\n /** Access level for data items read */\n itemRead?: AccessLevelWithLiterals;\n /** Access level for data items insert */\n itemInsert?: AccessLevelWithLiterals;\n /** Access level for data items update */\n itemUpdate?: AccessLevelWithLiterals;\n /** Access level for data items removal */\n itemRemove?: AccessLevelWithLiterals;\n}\n\n/**\n * Describes who can perform certain action.\n * Each level includes all levels below it (except UNDEFINED).\n */\nexport enum AccessLevel {\n /** Not set */\n UNKNOWN = 'UNKNOWN',\n /** Any subject, including visitors */\n ANYONE = 'ANYONE',\n /** Any signed-in user (both site members and collaborators) */\n SITE_MEMBER = 'SITE_MEMBER',\n /** Any signed-in user, but site members only have access to own items */\n SITE_MEMBER_AUTHOR = 'SITE_MEMBER_AUTHOR',\n /** Site collaborator that has a role with CMS Access permission */\n CMS_EDITOR = 'CMS_EDITOR',\n /** CMS administrators and users or roles granted with special access */\n PRIVILEGED = 'PRIVILEGED',\n}\n\n/** @enumType */\nexport type AccessLevelWithLiterals =\n | AccessLevel\n | 'UNKNOWN'\n | 'ANYONE'\n | 'SITE_MEMBER'\n | 'SITE_MEMBER_AUTHOR'\n | 'CMS_EDITOR'\n | 'PRIVILEGED';\n\n/** Special access granted to user or role */\nexport interface SpecialPermissions extends SpecialPermissionsSubjectOneOf {\n /**\n * User ID that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n userId?: string;\n /**\n * Policy ID of (custom) role that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n policyId?: string;\n /**\n * ID of this special access, so it can be managed separately\n * @format GUID\n * @readonly\n */\n _id?: string;\n /** If data item read is allowed */\n itemRead?: AccessWithLiterals;\n /** If data item insert is allowed */\n itemInsert?: AccessWithLiterals;\n /** If data item update is allowed */\n itemUpdate?: AccessWithLiterals;\n /** If data item remove is allowed */\n itemRemove?: AccessWithLiterals;\n}\n\n/** @oneof */\nexport interface SpecialPermissionsSubjectOneOf {\n /**\n * User ID that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n userId?: string;\n /**\n * Policy ID of (custom) role that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n policyId?: string;\n}\n\nexport enum Access {\n /** Action is not specifically allowed, but can be allowed by top-level permissions */\n UNSPECIFIED = 'UNSPECIFIED',\n /** Action is specifically allowed */\n ALLOWED = 'ALLOWED',\n}\n\n/** @enumType */\nexport type AccessWithLiterals = Access | 'UNSPECIFIED' | 'ALLOWED';\n\nexport interface GetPermissionsRequest {\n /**\n * Data Collection ID to get permissions for\n * @maxLength 256\n */\n dataCollectionId: string;\n}\n\nexport interface GetPermissionsResponse {\n /** Requested data permissions */\n dataPermissions?: DataPermissions;\n}\n\nexport interface UpdatePermissionsRequest {\n /** Data permissions to update */\n dataPermissions: DataPermissions;\n}\n\nexport interface UpdatePermissionsResponse {\n /** Updated data permissions */\n dataPermissions?: DataPermissions;\n}\n\nexport interface AddSpecialPermissionsRequest {\n /**\n * Data Collection ID to add special permission for\n * @maxLength 256\n */\n dataCollectionId: string;\n /** Special permissions to add */\n specialPermissions: SpecialPermissions;\n}\n\nexport interface AddSpecialPermissionsResponse {\n /** Added special data permissions */\n specialPermissions?: SpecialPermissions;\n}\n\nexport interface UpdateSpecialPermissionsRequest {\n /** Special permissions to update */\n specialPermissions: SpecialPermissions;\n}\n\nexport interface UpdateSpecialPermissionsResponse {\n /** Updated special data permissions */\n specialPermissions?: SpecialPermissions;\n}\n\nexport interface RemoveSpecialPermissionsRequest {\n /**\n * Special permissions ID to remove\n * @format GUID\n */\n specialPermissionsId: string;\n}\n\nexport interface RemoveSpecialPermissionsResponse {}\n\nexport interface GetMyPermissionsRequest {\n /**\n * Data Collection ID to get permission for\n * @maxLength 256\n */\n dataCollectionId: string;\n}\n\nexport interface GetMyPermissionsResponse {\n /** If data item read is allowed */\n itemRead?: boolean;\n /** If data item insert is allowed */\n itemInsert?: boolean;\n /** If data item update is allowed */\n itemUpdate?: boolean;\n /** If data item remove is allowed */\n itemRemove?: boolean;\n}\n\nexport interface MigrateCustomRolesRequest {\n /**\n * Role ID to update, if empty updates all roles in scope\n * @format GUID\n */\n policyId?: string | null;\n}\n\nexport interface MigrateCustomRolesResponse {}\n\nexport interface PolicyAssignmentsUpdated\n extends PolicyAssignmentsUpdatedEventOneOf {\n policyAssigned?: PolicyAssigned;\n policyUnassigned?: PolicyUnassigned;\n policyAssignmentUpdated?: PolicyAssignmentUpdated;\n}\n\n/** @oneof */\nexport interface PolicyAssignmentsUpdatedEventOneOf {\n policyAssigned?: PolicyAssigned;\n policyUnassigned?: PolicyUnassigned;\n policyAssignmentUpdated?: PolicyAssignmentUpdated;\n}\n\nexport interface PolicyAssigned {\n subject?: Subject;\n assignment?: PolicyAssignment[];\n}\n\nexport interface Subject {\n /** ID of identity assigned to the asset. */\n _id?: string;\n /** Type of identity assigned to the asset. Supported subject types include user IDs, account IDs, and app IDs. */\n subjectType?: SubjectTypeWithLiterals;\n /** Context of identity assigned to the asset. For example, a `subjectType` = `USER` will have `context` = `ACCOUNT`. */\n context?: SubjectContext;\n}\n\nexport enum SubjectType {\n UNKNOWN = 'UNKNOWN',\n ACCOUNT = 'ACCOUNT',\n USER = 'USER',\n USER_GROUP = 'USER_GROUP',\n MEMBER_GROUP = 'MEMBER_GROUP',\n VISITOR_GROUP = 'VISITOR_GROUP',\n EXTERNAL_APP = 'EXTERNAL_APP',\n ACCOUNT_GROUP = 'ACCOUNT_GROUP',\n WIX_APP = 'WIX_APP',\n}\n\n/** @enumType */\nexport type SubjectTypeWithLiterals =\n | SubjectType\n | 'UNKNOWN'\n | 'ACCOUNT'\n | 'USER'\n | 'USER_GROUP'\n | 'MEMBER_GROUP'\n | 'VISITOR_GROUP'\n | 'EXTERNAL_APP'\n | 'ACCOUNT_GROUP'\n | 'WIX_APP';\n\nexport interface SubjectContext {\n _id?: string;\n contextType?: SubjectContextTypeWithLiterals;\n}\n\nexport enum SubjectContextType {\n UNKNOWN_CTX = 'UNKNOWN_CTX',\n ORG_CTX = 'ORG_CTX',\n ACCOUNT_CTX = 'ACCOUNT_CTX',\n}\n\n/** @enumType */\nexport type SubjectContextTypeWithLiterals =\n | SubjectContextType\n | 'UNKNOWN_CTX'\n | 'ORG_CTX'\n | 'ACCOUNT_CTX';\n\nexport interface PolicyAssignment {\n policyId?: string;\n resource?: ResourcePath;\n condition?: PolicyCondition;\n assignmentId?: string | null;\n}\n\nexport interface ResourcePath {\n organization?: string | null;\n account?: string | null;\n site?: string | null;\n resource?: Resource;\n}\n\n/**\n * A custom resource. Is used to represent some asset that is not a direct resource context (site or account), but something custom.\n * For example: payment method, blog post, domain, logo.\n */\nexport interface Resource {\n /** The resource id. */\n _id?: string | null;\n /** The resource type */\n type?: string | null;\n}\n\nexport interface PolicyCondition {\n /** The type of the condition */\n condition?: ConditionType;\n}\n\nexport interface ConditionType extends ConditionTypeOfOneOf {\n /** @deprecated */\n simpleCondition?: SimpleCondition;\n /** A logic combination between several conditions, with an operator between them */\n joinedConditions?: JoinedCondition;\n /** @deprecated */\n environmentCondition?: EnvironmentCondition;\n /** A single condition */\n condition?: Condition;\n}\n\n/** @oneof */\nexport interface ConditionTypeOfOneOf {\n /** @deprecated */\n simpleCondition?: SimpleCondition;\n /** A logic combination between several conditions, with an operator between them */\n joinedConditions?: JoinedCondition;\n /** @deprecated */\n environmentCondition?: EnvironmentCondition;\n /** A single condition */\n condition?: Condition;\n}\n\nexport interface SimpleCondition {\n attrName?: string;\n value?: SimpleConditionValue;\n op?: SimpleConditionOperatorWithLiterals;\n conditionModelId?: string;\n}\n\nexport interface SimpleConditionValue extends SimpleConditionValueValueOneOf {\n attrName?: string;\n stringValue?: string;\n boolValue?: boolean;\n}\n\n/** @oneof */\nexport interface SimpleConditionValueValueOneOf {\n attrName?: string;\n stringValue?: string;\n boolValue?: boolean;\n}\n\nexport enum SimpleConditionOperator {\n UNKNOWN_SIMPLE_OP = 'UNKNOWN_SIMPLE_OP',\n EQUAL = 'EQUAL',\n}\n\n/** @enumType */\nexport type SimpleConditionOperatorWithLiterals =\n | SimpleConditionOperator\n | 'UNKNOWN_SIMPLE_OP'\n | 'EQUAL';\n\nexport interface JoinedCondition {\n /** The operator that should be used when evaluating the condition */\n op?: JoinedConditionOperatorWithLiterals;\n /** The conditions that should be evaluated, and then joined using the operator provided */\n conditions?: ConditionType[];\n}\n\nexport enum JoinedConditionOperator {\n UNKNOWN_JOIN_OP = 'UNKNOWN_JOIN_OP',\n OR = 'OR',\n AND = 'AND',\n}\n\n/** @enumType */\nexport type JoinedConditionOperatorWithLiterals =\n | JoinedConditionOperator\n | 'UNKNOWN_JOIN_OP'\n | 'OR'\n | 'AND';\n\nexport interface EnvironmentCondition\n extends EnvironmentConditionConditionOneOf {\n experimentCondition?: ExperimentCondition;\n}\n\n/** @oneof */\nexport interface EnvironmentConditionConditionOneOf {\n experimentCondition?: ExperimentCondition;\n}\n\nexport interface ExperimentCondition {\n spec?: string;\n fallbackValue?: string;\n expectedValue?: string;\n}\n\nexport interface Condition {\n /** The unique identifier of the condition model. Indicates which actions the condition is working on */\n conditionModelId?: string;\n /** The operator that should be evaluated */\n operator?: ConditionOperator;\n}\n\nexport interface ConditionOperator extends ConditionOperatorOperatorsOneOf {\n /** Comparison of equality - will be evaluated to true if the given parties are equal */\n equals?: EqualOperator;\n /** Regex operator - will be evaluated to true if the given value matches the provided regex */\n like?: LikeOperator;\n /** Petri experiment - will be evaluated using petri. */\n experiment?: ExperimentOperator;\n /** Operator that indicates a dependency on another subject being allowed to perform something. */\n dependOn?: DependOnOperator;\n}\n\n/** @oneof */\nexport interface ConditionOperatorOperatorsOneOf {\n /** Comparison of equality - will be evaluated to true if the given parties are equal */\n equals?: EqualOperator;\n /** Regex operator - will be evaluated to true if the given value matches the provided regex */\n like?: LikeOperator;\n /** Petri experiment - will be evaluated using petri. */\n experiment?: ExperimentOperator;\n /** Operator that indicates a dependency on another subject being allowed to perform something. */\n dependOn?: DependOnOperator;\n}\n\nexport interface EqualOperator {\n /** The attribute which should be compared. The attribute will be first evaluated to a value, and then compared the other side (attribute/value) */\n attrName?: string;\n /** The value to compare to. If the two parties are equal - we will return true. */\n value?: ConditionValue;\n}\n\nexport interface ConditionValue extends ConditionValueValueOneOf {\n /** an attribute. We'll first retrieve the value of the attribute (from the request or from pre-indexed values), and then compare to what it needs to be compared with. */\n attrName?: string;\n /** a value with a string type. Will be compared to the attribute provided, and be true only if they match the operator. */\n stringValue?: string;\n /** a value with a boolean type. Will be compared to the attribute provided, and be true only if they match the operator. */\n boolValue?: boolean;\n}\n\n/** @oneof */\nexport interface ConditionValueValueOneOf {\n /** an attribute. We'll first retrieve the value of the attribute (from the request or from pre-indexed values), and then compare to what it needs to be compared with. */\n attrName?: string;\n /** a value with a string type. Will be compared to the attribute provided, and be true only if they match the operator. */\n stringValue?: string;\n /** a value with a boolean type. Will be compared to the attribute provided, and be true only if they match the operator. */\n boolValue?: boolean;\n}\n\nexport interface LikeOperator {\n /** The attribute which should be compared. The attribute will be first evaluated to a value, and then compared the regex values provided. */\n attrName?: string;\n /** The regex values which the attribute value should be evaluated on. If the attribute value matches at least one of the regular expressions provided - we will return true */\n values?: string[];\n}\n\nexport interface ExperimentOperator {\n /** The spec to conduct the experiment on. */\n spec?: string;\n /** The value to use if the experiment could not be conducted */\n fallbackValue?: string;\n /** The expected value of the experiment conduction. If it matches the actual value - true will be returned. Otherwise - false. */\n expectedValue?: string;\n}\n\n/** Implies that the policy takes affect only if the depend on subject is permitted as well. */\nexport interface DependOnOperator {\n /** The subject on which the current entry depends on. If the subject is allowed to perform what the query was about - the condition will be evaluated to true. Otherwise - false */\n dependOnSubject?: Subject;\n}\n\nexport interface PolicyUnassigned {\n subject?: Subject;\n assignment?: PolicyAssignment[];\n}\n\nexport interface PolicyAssignmentUpdated {\n subject?: Subject;\n fromAssignment?: PolicyAssignment[];\n toAssignment?: PolicyAssignment[];\n}\n\nexport interface Empty {}\n\nexport interface PolicyAuthorizationDataUpdated {\n policyId?: string;\n fromPolicyStatements?: PolicyStatement[];\n toPolicyStatements?: PolicyStatement[];\n policyType?: PolicyTypeWithLiterals;\n policyOwner?: PolicyOwner;\n}\n\nexport interface PolicyStatement {\n /** @readonly */\n _id?: string | null;\n permissions?: string[];\n scopes?: string[];\n effect?: EffectWithLiterals;\n condition?: PolicyCondition;\n}\n\nexport enum Effect {\n UNKNOWN_EFFECT = 'UNKNOWN_EFFECT',\n ALLOW = 'ALLOW',\n DENY = 'DENY',\n}\n\n/** @enumType */\nexport type EffectWithLiterals = Effect | 'UNKNOWN_EFFECT' | 'ALLOW' | 'DENY';\n\nexport enum PolicyType {\n UNKNOWN_STATUS = 'UNKNOWN_STATUS',\n PREDEFINED = 'PREDEFINED',\n CUSTOM = 'CUSTOM',\n INLINE_CUSTOM = 'INLINE_CUSTOM',\n}\n\n/** @enumType */\nexport type PolicyTypeWithLiterals =\n | PolicyType\n | 'UNKNOWN_STATUS'\n | 'PREDEFINED'\n | 'CUSTOM'\n | 'INLINE_CUSTOM';\n\nexport interface PolicyOwner {\n type?: PolicyOwnerTypeWithLiterals;\n _id?: string;\n}\n\nexport enum PolicyOwnerType {\n UNKNOWN_TYPE = 'UNKNOWN_TYPE',\n WIX = 'WIX',\n WIX_ACCOUNT = 'WIX_ACCOUNT',\n}\n\n/** @enumType */\nexport type PolicyOwnerTypeWithLiterals =\n | PolicyOwnerType\n | 'UNKNOWN_TYPE'\n | 'WIX'\n | 'WIX_ACCOUNT';\n\nexport interface DomainEvent extends DomainEventBodyOneOf {\n createdEvent?: EntityCreatedEvent;\n updatedEvent?: EntityUpdatedEvent;\n deletedEvent?: EntityDeletedEvent;\n actionEvent?: ActionEvent;\n /** Event ID. With this ID you can easily spot duplicated events and ignore them. */\n _id?: string;\n /**\n * Fully Qualified Domain Name of an entity. This is a unique identifier assigned to the API main business entities.\n * For example, `wix.stores.catalog.product`, `wix.bookings.session`, `wix.payments.transaction`.\n */\n entityFqdn?: string;\n /**\n * Event action name, placed at the top level to make it easier for users to dispatch messages.\n * For example: `created`/`updated`/`deleted`/`started`/`completed`/`email_opened`.\n */\n slug?: string;\n /** ID of the entity associated with the event. */\n entityId?: string;\n /** Event timestamp in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format and UTC time. For example, `2020-04-26T13:57:50.699Z`. */\n eventTime?: Date | null;\n /**\n * Whether the event was triggered as a result of a privacy regulation application\n * (for example, GDPR).\n */\n triggeredByAnonymizeRequest?: boolean | null;\n /** If present, indicates the action that triggered the event. */\n originatedFrom?: string | null;\n /**\n * A sequence number that indicates the order of updates to an entity. For example, if an entity was updated at 16:00 and then again at 16:01, the second update will always have a higher sequence number.\n * You can use this number to make sure you're handling updates in the right order. Just save the latest sequence number on your end and compare it to the one in each new message. If the new message has an older (lower) number, you can safely ignore it.\n */\n entityEventSequence?: string | null;\n}\n\n/** @oneof */\nexport interface DomainEventBodyOneOf {\n createdEvent?: EntityCreatedEvent;\n updatedEvent?: EntityUpdatedEvent;\n deletedEvent?: EntityDeletedEvent;\n actionEvent?: ActionEvent;\n}\n\nexport interface EntityCreatedEvent {\n entity?: string;\n}\n\nexport interface RestoreInfo {\n deletedDate?: Date | null;\n}\n\nexport interface EntityUpdatedEvent {\n /**\n * Since platformized APIs only expose PATCH and not PUT we can't assume that the fields sent from the client are the actual diff.\n * This means that to generate a list of changed fields (as opposed to sent fields) one needs to traverse both objects.\n * We don't want to impose this on all developers and so we leave this traversal to the notification recipients which need it.\n */\n currentEntity?: string;\n}\n\nexport interface EntityDeletedEvent {\n /** Entity that was deleted. */\n deletedEntity?: string | null;\n}\n\nexport interface ActionEvent {\n body?: string;\n}\n\ntype DataPermissionsNonNullablePaths =\n | `_id`\n | `itemRead`\n | `itemInsert`\n | `itemUpdate`\n | `itemRemove`;\n\n/**\n * Returns data permissions for a data collection\n * @param dataCollectionId - Data Collection ID to get permissions for\n * @public\n * @documentationMaturity preview\n * @requiredField dataCollectionId\n * @permissionId WIX_DATA.PERMISSIONS_READ\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.GetPermissions\n */\nexport async function getPermissions(\n dataCollectionId: string\n): Promise<\n NonNullablePaths<\n GetPermissionsResponse,\n {\n [P in DataPermissionsNonNullablePaths]: `dataPermissions.${P}`;\n }[DataPermissionsNonNullablePaths]\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n dataCollectionId: dataCollectionId,\n });\n\n const reqOpts = ambassadorWixDataV1DataPermissions.getPermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { dataCollectionId: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['dataCollectionId']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Updates data permissions for a data collection\n *\n * NOTE that special permissions are not updated using this API, use dedicated methods for it.\n * @param dataPermissions - Data permissions to update\n * @public\n * @documentationMaturity preview\n * @requiredField dataPermissions\n * @requiredField dataPermissions._id\n * @requiredField dataPermissions.itemInsert\n * @requiredField dataPermissions.itemRead\n * @requiredField dataPermissions.itemRemove\n * @requiredField dataPermissions.itemUpdate\n * @permissionId WIX_DATA.PERMISSIONS_UPDATE\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.UpdatePermissions\n */\nexport async function updatePermissions(\n dataPermissions: NonNullablePaths<\n DataPermissions,\n `_id` | `itemInsert` | `itemRead` | `itemRemove` | `itemUpdate`\n >\n): Promise<\n NonNullablePaths<\n UpdatePermissionsResponse,\n {\n [P in DataPermissionsNonNullablePaths]: `dataPermissions.${P}`;\n }[DataPermissionsNonNullablePaths]\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n dataPermissions: dataPermissions,\n });\n\n const reqOpts = ambassadorWixDataV1DataPermissions.updatePermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { dataPermissions: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['dataPermissions']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Adds special data permissions for particular user/group\n * Errors:\n * - `ALREADY_EXISTS` in case if special permission for same subject already exists\n * @param dataCollectionId - Data Collection ID to add special permission for\n * @public\n * @documentationMaturity preview\n * @requiredField dataCollectionId\n * @requiredField options\n * @requiredField options.specialPermissions\n * @requiredField options.specialPermissions.subject\n * @permissionId WIX_DATA.PERMISSIONS_UPDATE_SPECIAL\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.AddSpecialPermissions\n */\nexport async function addSpecialPermissions(\n dataCollectionId: string,\n options: NonNullablePaths<AddSpecialPermissionsOptions, `specialPermissions`>\n): Promise<\n NonNullablePaths<\n AddSpecialPermissionsResponse,\n | `specialPermissions.userId`\n | `specialPermissions.policyId`\n | `specialPermissions._id`\n | `specialPermissions.itemRead`\n | `specialPermissions.itemInsert`\n | `specialPermissions.itemUpdate`\n | `specialPermissions.itemRemove`\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[2] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n dataCollectionId: dataCollectionId,\n specialPermissions: options?.specialPermissions,\n });\n\n const reqOpts =\n ambassadorWixDataV1DataPermissions.addSpecialPermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: {\n dataCollectionId: '$[0]',\n specialPermissions: '$[1].specialPermissions',\n },\n singleArgumentUnchanged: false,\n },\n ['dataCollectionId', 'options']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\nexport interface AddSpecialPermissionsOptions {\n /** Special permissions to add */\n specialPermissions: SpecialPermissions;\n}\n\n/**\n * Updates special data permissions for particular user/group.\n * Any omitted permissions will be set to UNSPECIFIED.\n * @param _id - ID of this special access, so it can be managed separately\n * @public\n * @documentationMaturity preview\n * @requiredField _id\n * @requiredField specialPermissions\n * @permissionId WIX_DATA.PERMISSIONS_UPDATE_SPECIAL\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.UpdateSpecialPermissions\n */\nexport async function updateSpecialPermissions(\n _id: string,\n specialPermissions: UpdateSpecialPermissions\n): Promise<\n NonNullablePaths<\n UpdateSpecialPermissionsResponse,\n | `specialPermissions.userId`\n | `specialPermissions.policyId`\n | `specialPermissions._id`\n | `specialPermissions.itemRead`\n | `specialPermissions.itemInsert`\n | `specialPermissions.itemUpdate`\n | `specialPermissions.itemRemove`\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[2] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n specialPermissions: { ...specialPermissions, id: _id },\n });\n\n const reqOpts =\n ambassadorWixDataV1DataPermissions.updateSpecialPermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: { specialPermissions: '$[1]' },\n explicitPathsToArguments: { 'specialPermissions.id': '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['_id', 'specialPermissions']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\nexport interface UpdateSpecialPermissions {\n /**\n * User ID that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n userId?: string;\n /**\n * Policy ID of (custom) role that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n policyId?: string;\n /**\n * ID of this special access, so it can be managed separately\n * @format GUID\n * @readonly\n */\n _id?: string;\n /** If data item read is allowed */\n itemRead?: AccessWithLiterals;\n /** If data item insert is allowed */\n itemInsert?: AccessWithLiterals;\n /** If data item update is allowed */\n itemUpdate?: AccessWithLiterals;\n /** If data item remove is allowed */\n itemRemove?: AccessWithLiterals;\n}\n\n/**\n * Deletes special data permissions for particular user/group\n * @param specialPermissionsId - Special permissions ID to remove\n * @public\n * @documentationMaturity preview\n * @requiredField specialPermissionsId\n * @permissionId WIX_DATA.PERMISSIONS_UPDATE_SPECIAL\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.RemoveSpecialPermissions\n */\nexport async function removeSpecialPermissions(\n specialPermissionsId: string\n): Promise<void> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n specialPermissionsId: specialPermissionsId,\n });\n\n const reqOpts =\n ambassadorWixDataV1DataPermissions.removeSpecialPermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { specialPermissionsId: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['specialPermissionsId']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Returns current user permissions for given data collection\n * @param dataCollectionId - Data Collection ID to get permission for\n * @public\n * @documentationMaturity preview\n * @requiredField dataCollectionId\n * @permissionId WIX_DATA.PERMISSIONS_GET_ALLOWED\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.GetMyPermissions\n */\nexport async function getMyPermissions(\n dataCollectionId: string\n): Promise<\n NonNullablePaths<\n GetMyPermissionsResponse,\n `itemRead` | `itemInsert` | `itemUpdate` | `itemRemove`\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n dataCollectionId: dataCollectionId,\n });\n\n const reqOpts = ambassadorWixDataV1DataPermissions.getMyPermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { dataCollectionId: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['dataCollectionId']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n","import { toURLSearchParams } from '@wix/sdk-runtime/rest-modules';\nimport { resolveUrl } from '@wix/sdk-runtime/rest-modules';\nimport { ResolveUrlOpts } from '@wix/sdk-runtime/rest-modules';\nimport { RequestOptionsFactory } from '@wix/sdk-types';\n\nfunction resolveWixCloudPermissionsV1DataPermissionsServiceUrl(\n opts: Omit<ResolveUrlOpts, 'domainToMappings'>\n) {\n const domainToMappings = {\n 'manage._base_domain_': [\n {\n srcPath: '/_api/cloud-data/v1/permissions',\n destPath: '/v1/permissions',\n },\n ],\n 'editor._base_domain_': [\n {\n srcPath: '/_api/cloud-data/v1/permissions',\n destPath: '/v1/permissions',\n },\n ],\n 'blocks._base_domain_': [\n {\n srcPath: '/_api/cloud-data/v1/permissions',\n destPath: '/v1/permissions',\n },\n ],\n 'create.editorx': [\n {\n srcPath: '/_api/cloud-data/v1/permissions',\n destPath: '/v1/permissions',\n },\n ],\n };\n\n return resolveUrl(Object.assign(opts, { domainToMappings }));\n}\n\nconst PACKAGE_NAME = '@wix/auto_sdk_data_permissions';\n\n/** Returns data permissions for a data collection */\nexport function getPermissions(payload: object): RequestOptionsFactory<any> {\n function __getPermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'GET' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.GetPermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n };\n\n return metadata;\n }\n\n return __getPermissions;\n}\n\n/**\n * Updates data permissions for a data collection\n *\n * NOTE that special permissions are not updated using this API, use dedicated methods for it.\n */\nexport function updatePermissions(payload: object): RequestOptionsFactory<any> {\n function __updatePermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'POST' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.UpdatePermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions',\n data: payload,\n host,\n }),\n data: payload,\n };\n\n return metadata;\n }\n\n return __updatePermissions;\n}\n\n/**\n * Adds special data permissions for particular user/group\n * Errors:\n * - `ALREADY_EXISTS` in case if special permission for same subject already exists\n */\nexport function addSpecialPermissions(\n payload: object\n): RequestOptionsFactory<any> {\n function __addSpecialPermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'POST' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.AddSpecialPermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions/special',\n data: payload,\n host,\n }),\n data: payload,\n };\n\n return metadata;\n }\n\n return __addSpecialPermissions;\n}\n\n/**\n * Updates special data permissions for particular user/group.\n * Any omitted permissions will be set to UNSPECIFIED.\n */\nexport function updateSpecialPermissions(\n payload: object\n): RequestOptionsFactory<any> {\n function __updateSpecialPermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'POST' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.UpdateSpecialPermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions/special/{specialPermissions.id}',\n data: payload,\n host,\n }),\n data: payload,\n };\n\n return metadata;\n }\n\n return __updateSpecialPermissions;\n}\n\n/** Deletes special data permissions for particular user/group */\nexport function removeSpecialPermissions(\n payload: object\n): RequestOptionsFactory<any> {\n function __removeSpecialPermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'DELETE' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.RemoveSpecialPermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions/special/{specialPermissionsId}',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n };\n\n return metadata;\n }\n\n return __removeSpecialPermissions;\n}\n\n/** Returns current user permissions for given data collection */\nexport function getMyPermissions(payload: object): RequestOptionsFactory<any> {\n function __getMyPermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'GET' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.GetMyPermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions/current',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n };\n\n return metadata;\n }\n\n return __getMyPermissions;\n}\n","import { HttpClient, NonNullablePaths } from '@wix/sdk-types';\nimport {\n AddSpecialPermissionsOptions,\n AddSpecialPermissionsResponse,\n DataPermissions,\n GetMyPermissionsResponse,\n GetPermissionsResponse,\n UpdatePermissionsResponse,\n UpdateSpecialPermissions,\n UpdateSpecialPermissionsResponse,\n addSpecialPermissions as universalAddSpecialPermissions,\n getMyPermissions as universalGetMyPermissions,\n getPermissions as universalGetPermissions,\n removeSpecialPermissions as universalRemoveSpecialPermissions,\n updatePermissions as universalUpdatePermissions,\n updateSpecialPermissions as universalUpdateSpecialPermissions,\n} from './data-v1-data-permissions-permissions.universal.js';\n\nexport const __metadata = { PACKAGE_NAME: '@wix/data' };\n\nexport function getPermissions(\n httpClient: HttpClient\n): GetPermissionsSignature {\n return (dataCollectionId: string) =>\n universalGetPermissions(\n dataCollectionId,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface GetPermissionsSignature {\n /**\n * Returns data permissions for a data collection\n * @param - Data Collection ID to get permissions for\n */\n (dataCollectionId: string): Promise<GetPermissionsResponse>;\n}\n\nexport function updatePermissions(\n httpClient: HttpClient\n): UpdatePermissionsSignature {\n return (\n dataPermissions: NonNullablePaths<\n DataPermissions,\n `_id` | `itemInsert` | `itemRead` | `itemRemove` | `itemUpdate`\n >\n ) =>\n universalUpdatePermissions(\n dataPermissions,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface UpdatePermissionsSignature {\n /**\n * Updates data permissions for a data collection\n *\n * NOTE that special permissions are not updated using this API, use dedicated methods for it.\n * @param - Data permissions to update\n */\n (dataPermissions: DataPermissions): Promise<UpdatePermissionsResponse>;\n}\n\nexport function addSpecialPermissions(\n httpClient: HttpClient\n): AddSpecialPermissionsSignature {\n return (\n dataCollectionId: string,\n options: NonNullablePaths<\n AddSpecialPermissionsOptions,\n `specialPermissions`\n >\n ) =>\n universalAddSpecialPermissions(\n dataCollectionId,\n options,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface AddSpecialPermissionsSignature {\n /**\n * Adds special data permissions for particular user/group\n * Errors:\n * - `ALREADY_EXISTS` in case if special permission for same subject already exists\n * @param - Data Collection ID to add special permission for\n */\n (\n dataCollectionId: string,\n options: AddSpecialPermissionsOptions\n ): Promise<AddSpecialPermissionsResponse>;\n}\n\nexport function updateSpecialPermissions(\n httpClient: HttpClient\n): UpdateSpecialPermissionsSignature {\n return (_id: string, specialPermissions: UpdateSpecialPermissions) =>\n universalUpdateSpecialPermissions(\n _id,\n specialPermissions,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface UpdateSpecialPermissionsSignature {\n /**\n * Updates special data permissions for particular user/group.\n * Any omitted permissions will be set to UNSPECIFIED.\n * @param - ID of this special access, so it can be managed separately\n */\n (\n _id: string,\n specialPermissions: UpdateSpecialPermissions\n ): Promise<UpdateSpecialPermissionsResponse>;\n}\n\nexport function removeSpecialPermissions(\n httpClient: HttpClient\n): RemoveSpecialPermissionsSignature {\n return (specialPermissionsId: string) =>\n universalRemoveSpecialPermissions(\n specialPermissionsId,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface RemoveSpecialPermissionsSignature {\n /**\n * Deletes special data permissions for particular user/group\n * @param - Special permissions ID to remove\n */\n (specialPermissionsId: string): Promise<void>;\n}\n\nexport function getMyPermissions(\n httpClient: HttpClient\n): GetMyPermissionsSignature {\n return (dataCollectionId: string) =>\n universalGetMyPermissions(\n dataCollectionId,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface GetMyPermissionsSignature {\n /**\n * Returns current user permissions for given data collection\n * @param - Data Collection ID to get permission for\n */\n (dataCollectionId: string): Promise<GetMyPermissionsResponse>;\n}\n\nexport {\n Access,\n AccessLevel,\n ActionEvent,\n AddSpecialPermissionsOptions,\n AddSpecialPermissionsRequest,\n AddSpecialPermissionsResponse,\n Condition,\n ConditionOperator,\n ConditionOperatorOperatorsOneOf,\n ConditionType,\n ConditionTypeOfOneOf,\n ConditionValue,\n ConditionValueValueOneOf,\n DataPermissions,\n DependOnOperator,\n DomainEvent,\n DomainEventBodyOneOf,\n Effect,\n Empty,\n EntityCreatedEvent,\n EntityDeletedEvent,\n EntityUpdatedEvent,\n EnvironmentCondition,\n EnvironmentConditionConditionOneOf,\n EqualOperator,\n ExperimentCondition,\n ExperimentOperator,\n GetMyPermissionsRequest,\n GetMyPermissionsResponse,\n GetPermissionsRequest,\n GetPermissionsResponse,\n JoinedCondition,\n JoinedConditionOperator,\n LikeOperator,\n MigrateCustomRolesRequest,\n MigrateCustomRolesResponse,\n PolicyAssigned,\n PolicyAssignment,\n PolicyAssignmentUpdated,\n PolicyAssignmentsUpdated,\n PolicyAssignmentsUpdatedEventOneOf,\n PolicyAuthorizationDataUpdated,\n PolicyCondition,\n PolicyOwner,\n PolicyOwnerType,\n PolicyStatement,\n PolicyType,\n PolicyUnassigned,\n RemoveSpecialPermissionsRequest,\n RemoveSpecialPermissionsResponse,\n Resource,\n ResourcePath,\n RestoreInfo,\n SimpleCondition,\n SimpleConditionOperator,\n SimpleConditionValue,\n SimpleConditionValueValueOneOf,\n SpecialPermissions,\n SpecialPermissionsSubjectOneOf,\n Subject,\n SubjectContext,\n SubjectContextType,\n SubjectType,\n UpdatePermissionsRequest,\n UpdatePermissionsResponse,\n UpdateSpecialPermissions,\n UpdateSpecialPermissionsRequest,\n UpdateSpecialPermissionsResponse,\n} from './data-v1-data-permissions-permissions.universal.js';\n","import {\n getPermissions as publicGetPermissions,\n updatePermissions as publicUpdatePermissions,\n addSpecialPermissions as publicAddSpecialPermissions,\n updateSpecialPermissions as publicUpdateSpecialPermissions,\n removeSpecialPermissions as publicRemoveSpecialPermissions,\n getMyPermissions as publicGetMyPermissions,\n} from './data-v1-data-permissions-permissions.public.js';\nimport { createRESTModule } from '@wix/sdk-runtime/rest-modules';\nimport { BuildRESTFunction, MaybeContext } from '@wix/sdk-types';\n\nexport const getPermissions: MaybeContext<\n BuildRESTFunction<typeof publicGetPermissions> & typeof publicGetPermissions\n> = /*#__PURE__*/ createRESTModule(publicGetPermissions);\nexport const updatePermissions: MaybeContext<\n BuildRESTFunction<typeof publicUpdatePermissions> &\n typeof publicUpdatePermissions\n> = /*#__PURE__*/ createRESTModule(publicUpdatePermissions);\nexport const addSpecialPermissions: MaybeContext<\n BuildRESTFunction<typeof publicAddSpecialPermissions> &\n typeof publicAddSpecialPermissions\n> = /*#__PURE__*/ createRESTModule(publicAddSpecialPermissions);\nexport const updateSpecialPermissions: MaybeContext<\n BuildRESTFunction<typeof publicUpdateSpecialPermissions> &\n typeof publicUpdateSpecialPermissions\n> = /*#__PURE__*/ createRESTModule(publicUpdateSpecialPermissions);\nexport const removeSpecialPermissions: MaybeContext<\n BuildRESTFunction<typeof publicRemoveSpecialPermissions> &\n typeof publicRemoveSpecialPermissions\n> = /*#__PURE__*/ createRESTModule(publicRemoveSpecialPermissions);\nexport const getMyPermissions: MaybeContext<\n BuildRESTFunction<typeof publicGetMyPermissions> &\n typeof publicGetMyPermissions\n> = /*#__PURE__*/ createRESTModule(publicGetMyPermissions);\n\nexport {\n AccessLevel,\n Access,\n SubjectType,\n SubjectContextType,\n SimpleConditionOperator,\n JoinedConditionOperator,\n Effect,\n PolicyType,\n PolicyOwnerType,\n} from './data-v1-data-permissions-permissions.universal.js';\nexport {\n DataPermissions,\n SpecialPermissions,\n SpecialPermissionsSubjectOneOf,\n GetPermissionsRequest,\n GetPermissionsResponse,\n UpdatePermissionsRequest,\n UpdatePermissionsResponse,\n AddSpecialPermissionsRequest,\n AddSpecialPermissionsResponse,\n UpdateSpecialPermissionsRequest,\n UpdateSpecialPermissionsResponse,\n RemoveSpecialPermissionsRequest,\n RemoveSpecialPermissionsResponse,\n GetMyPermissionsRequest,\n GetMyPermissionsResponse,\n MigrateCustomRolesRequest,\n MigrateCustomRolesResponse,\n PolicyAssignmentsUpdated,\n PolicyAssignmentsUpdatedEventOneOf,\n PolicyAssigned,\n Subject,\n SubjectContext,\n PolicyAssignment,\n ResourcePath,\n Resource,\n PolicyCondition,\n ConditionType,\n ConditionTypeOfOneOf,\n SimpleCondition,\n SimpleConditionValue,\n SimpleConditionValueValueOneOf,\n JoinedCondition,\n EnvironmentCondition,\n EnvironmentConditionConditionOneOf,\n ExperimentCondition,\n Condition,\n ConditionOperator,\n ConditionOperatorOperatorsOneOf,\n EqualOperator,\n ConditionValue,\n ConditionValueValueOneOf,\n LikeOperator,\n ExperimentOperator,\n DependOnOperator,\n PolicyUnassigned,\n PolicyAssignmentUpdated,\n Empty,\n PolicyAuthorizationDataUpdated,\n PolicyStatement,\n PolicyOwner,\n DomainEvent,\n DomainEventBodyOneOf,\n EntityCreatedEvent,\n RestoreInfo,\n EntityUpdatedEvent,\n EntityDeletedEvent,\n ActionEvent,\n AddSpecialPermissionsOptions,\n UpdateSpecialPermissions,\n} from './data-v1-data-permissions-permissions.universal.js';\n"],"mappings":"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","names":["AccessLevel","Access","SubjectType","SubjectContextType","SimpleConditionOperator","JoinedConditionOperator","Effect","PolicyType","PolicyOwnerType","getPermissions","updatePermissions","addSpecialPermissions","updateSpecialPermissions","removeSpecialPermissions","getMyPermissions","getPermissions","updatePermissions","addSpecialPermissions","updateSpecialPermissions","removeSpecialPermissions","getMyPermissions","getPermissions","updatePermissions","addSpecialPermissions","updateSpecialPermissions","removeSpecialPermissions","getMyPermissions"]}
1
+ {"version":3,"sources":["../../src/data-v1-data-permissions-permissions.universal.ts","../../src/data-v1-data-permissions-permissions.http.ts","../../src/data-v1-data-permissions-permissions.public.ts","../../src/data-v1-data-permissions-permissions.context.ts"],"sourcesContent":["import { transformError as sdkTransformError } from '@wix/sdk-runtime/transform-error';\nimport {\n renameKeysFromSDKRequestToRESTRequest,\n renameKeysFromRESTResponseToSDKResponse,\n} from '@wix/sdk-runtime/rename-all-nested-keys';\nimport { HttpClient, NonNullablePaths } from '@wix/sdk-types';\nimport * as ambassadorWixDataV1DataPermissions from './data-v1-data-permissions-permissions.http.js';\n\n/**\n * Permissions configuration of a data collection.\n *\n * Describes who can perform certain data operations on a collection.\n */\nexport interface DataPermissions {\n /**\n * Data Collection ID that is subject of these permissions\n * @immutable\n * @maxLength 255\n */\n _id?: string;\n /** Access level for data items read */\n itemRead?: AccessLevelWithLiterals;\n /** Access level for data items insert */\n itemInsert?: AccessLevelWithLiterals;\n /** Access level for data items update */\n itemUpdate?: AccessLevelWithLiterals;\n /** Access level for data items removal */\n itemRemove?: AccessLevelWithLiterals;\n}\n\n/**\n * Describes who can perform certain action.\n * Each level includes all levels below it (except UNDEFINED).\n */\nexport enum AccessLevel {\n /** Not set */\n UNKNOWN = 'UNKNOWN',\n /** Any subject, including visitors */\n ANYONE = 'ANYONE',\n /** Any signed-in user (both site members and collaborators) */\n SITE_MEMBER = 'SITE_MEMBER',\n /** Any signed-in user, but site members only have access to own items */\n SITE_MEMBER_AUTHOR = 'SITE_MEMBER_AUTHOR',\n /** Site collaborator that has a role with CMS Access permission */\n CMS_EDITOR = 'CMS_EDITOR',\n /** CMS administrators and users or roles granted with special access */\n PRIVILEGED = 'PRIVILEGED',\n}\n\n/** @enumType */\nexport type AccessLevelWithLiterals =\n | AccessLevel\n | 'UNKNOWN'\n | 'ANYONE'\n | 'SITE_MEMBER'\n | 'SITE_MEMBER_AUTHOR'\n | 'CMS_EDITOR'\n | 'PRIVILEGED';\n\n/** Special access granted to user or role */\nexport interface SpecialPermissions extends SpecialPermissionsSubjectOneOf {\n /**\n * User ID that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n userId?: string;\n /**\n * Policy ID of (custom) role that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n policyId?: string;\n /**\n * ID of this special access, so it can be managed separately\n * @format GUID\n * @readonly\n */\n _id?: string;\n /** If data item read is allowed */\n itemRead?: AccessWithLiterals;\n /** If data item insert is allowed */\n itemInsert?: AccessWithLiterals;\n /** If data item update is allowed */\n itemUpdate?: AccessWithLiterals;\n /** If data item remove is allowed */\n itemRemove?: AccessWithLiterals;\n}\n\n/** @oneof */\nexport interface SpecialPermissionsSubjectOneOf {\n /**\n * User ID that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n userId?: string;\n /**\n * Policy ID of (custom) role that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n policyId?: string;\n}\n\nexport enum Access {\n /** Action is not specifically allowed, but can be allowed by top-level permissions */\n UNSPECIFIED = 'UNSPECIFIED',\n /** Action is specifically allowed */\n ALLOWED = 'ALLOWED',\n}\n\n/** @enumType */\nexport type AccessWithLiterals = Access | 'UNSPECIFIED' | 'ALLOWED';\n\nexport interface GetPermissionsRequest {\n /**\n * Data Collection ID to get permissions for\n * @maxLength 256\n */\n dataCollectionId: string;\n}\n\nexport interface GetPermissionsResponse {\n /** Requested data permissions */\n dataPermissions?: DataPermissions;\n}\n\nexport interface UpdatePermissionsRequest {\n /** Data permissions to update */\n dataPermissions: DataPermissions;\n}\n\nexport interface UpdatePermissionsResponse {\n /** Updated data permissions */\n dataPermissions?: DataPermissions;\n}\n\nexport interface AddSpecialPermissionsRequest {\n /**\n * Data Collection ID to add special permission for\n * @maxLength 256\n */\n dataCollectionId: string;\n /** Special permissions to add */\n specialPermissions: SpecialPermissions;\n}\n\nexport interface AddSpecialPermissionsResponse {\n /** Added special data permissions */\n specialPermissions?: SpecialPermissions;\n}\n\nexport interface UpdateSpecialPermissionsRequest {\n /** Special permissions to update */\n specialPermissions: SpecialPermissions;\n}\n\nexport interface UpdateSpecialPermissionsResponse {\n /** Updated special data permissions */\n specialPermissions?: SpecialPermissions;\n}\n\nexport interface RemoveSpecialPermissionsRequest {\n /**\n * Special permissions ID to remove\n * @format GUID\n */\n specialPermissionsId: string;\n}\n\nexport interface RemoveSpecialPermissionsResponse {}\n\nexport interface GetMyPermissionsRequest {\n /**\n * Data Collection ID to get permission for\n * @maxLength 256\n */\n dataCollectionId: string;\n}\n\nexport interface GetMyPermissionsResponse {\n /** If data item read is allowed */\n itemRead?: boolean;\n /** If data item insert is allowed */\n itemInsert?: boolean;\n /** If data item update is allowed */\n itemUpdate?: boolean;\n /** If data item remove is allowed */\n itemRemove?: boolean;\n}\n\nexport interface MigrateCustomRolesRequest {\n /**\n * Role ID to update, if empty updates all roles in scope\n * @format GUID\n */\n policyId?: string | null;\n}\n\nexport interface MigrateCustomRolesResponse {}\n\nexport interface PolicyAssignmentsUpdated\n extends PolicyAssignmentsUpdatedEventOneOf {\n policyAssigned?: PolicyAssigned;\n policyUnassigned?: PolicyUnassigned;\n policyAssignmentUpdated?: PolicyAssignmentUpdated;\n}\n\n/** @oneof */\nexport interface PolicyAssignmentsUpdatedEventOneOf {\n policyAssigned?: PolicyAssigned;\n policyUnassigned?: PolicyUnassigned;\n policyAssignmentUpdated?: PolicyAssignmentUpdated;\n}\n\nexport interface PolicyAssigned {\n subject?: Subject;\n assignment?: PolicyAssignment[];\n}\n\nexport interface Subject {\n /** ID of identity assigned to the asset. */\n _id?: string;\n /** Type of identity assigned to the asset. Supported subject types include user IDs, account IDs, and app IDs. */\n subjectType?: SubjectTypeWithLiterals;\n /** Context of identity assigned to the asset. For example, a `subjectType` = `USER` will have `context` = `ACCOUNT`. */\n context?: SubjectContext;\n}\n\nexport enum SubjectType {\n UNKNOWN = 'UNKNOWN',\n ACCOUNT = 'ACCOUNT',\n USER = 'USER',\n USER_GROUP = 'USER_GROUP',\n MEMBER_GROUP = 'MEMBER_GROUP',\n VISITOR_GROUP = 'VISITOR_GROUP',\n EXTERNAL_APP = 'EXTERNAL_APP',\n ACCOUNT_GROUP = 'ACCOUNT_GROUP',\n WIX_APP = 'WIX_APP',\n}\n\n/** @enumType */\nexport type SubjectTypeWithLiterals =\n | SubjectType\n | 'UNKNOWN'\n | 'ACCOUNT'\n | 'USER'\n | 'USER_GROUP'\n | 'MEMBER_GROUP'\n | 'VISITOR_GROUP'\n | 'EXTERNAL_APP'\n | 'ACCOUNT_GROUP'\n | 'WIX_APP';\n\nexport interface SubjectContext {\n _id?: string;\n contextType?: SubjectContextTypeWithLiterals;\n}\n\nexport enum SubjectContextType {\n UNKNOWN_CTX = 'UNKNOWN_CTX',\n ORG_CTX = 'ORG_CTX',\n ACCOUNT_CTX = 'ACCOUNT_CTX',\n}\n\n/** @enumType */\nexport type SubjectContextTypeWithLiterals =\n | SubjectContextType\n | 'UNKNOWN_CTX'\n | 'ORG_CTX'\n | 'ACCOUNT_CTX';\n\nexport interface PolicyAssignment {\n policyId?: string;\n resource?: ResourcePath;\n condition?: PolicyCondition;\n assignmentId?: string | null;\n}\n\nexport interface ResourcePath {\n organization?: string | null;\n account?: string | null;\n site?: string | null;\n resource?: Resource;\n}\n\n/**\n * A custom resource. Is used to represent some asset that is not a direct resource context (site or account), but something custom.\n * For example: payment method, blog post, domain, logo.\n */\nexport interface Resource {\n /** The resource id. */\n _id?: string | null;\n /** The resource type */\n type?: string | null;\n}\n\nexport interface PolicyCondition {\n /** The type of the condition */\n condition?: ConditionType;\n}\n\nexport interface ConditionType extends ConditionTypeOfOneOf {\n /** @deprecated */\n simpleCondition?: SimpleCondition;\n /** A logic combination between several conditions, with an operator between them */\n joinedConditions?: JoinedCondition;\n /** @deprecated */\n environmentCondition?: EnvironmentCondition;\n /** A single condition */\n condition?: Condition;\n}\n\n/** @oneof */\nexport interface ConditionTypeOfOneOf {\n /** @deprecated */\n simpleCondition?: SimpleCondition;\n /** A logic combination between several conditions, with an operator between them */\n joinedConditions?: JoinedCondition;\n /** @deprecated */\n environmentCondition?: EnvironmentCondition;\n /** A single condition */\n condition?: Condition;\n}\n\nexport interface SimpleCondition {\n attrName?: string;\n value?: SimpleConditionValue;\n op?: SimpleConditionOperatorWithLiterals;\n conditionModelId?: string;\n}\n\nexport interface SimpleConditionValue extends SimpleConditionValueValueOneOf {\n attrName?: string;\n stringValue?: string;\n boolValue?: boolean;\n}\n\n/** @oneof */\nexport interface SimpleConditionValueValueOneOf {\n attrName?: string;\n stringValue?: string;\n boolValue?: boolean;\n}\n\nexport enum SimpleConditionOperator {\n UNKNOWN_SIMPLE_OP = 'UNKNOWN_SIMPLE_OP',\n EQUAL = 'EQUAL',\n}\n\n/** @enumType */\nexport type SimpleConditionOperatorWithLiterals =\n | SimpleConditionOperator\n | 'UNKNOWN_SIMPLE_OP'\n | 'EQUAL';\n\nexport interface JoinedCondition {\n /** The operator that should be used when evaluating the condition */\n op?: JoinedConditionOperatorWithLiterals;\n /** The conditions that should be evaluated, and then joined using the operator provided */\n conditions?: ConditionType[];\n}\n\nexport enum JoinedConditionOperator {\n UNKNOWN_JOIN_OP = 'UNKNOWN_JOIN_OP',\n OR = 'OR',\n AND = 'AND',\n}\n\n/** @enumType */\nexport type JoinedConditionOperatorWithLiterals =\n | JoinedConditionOperator\n | 'UNKNOWN_JOIN_OP'\n | 'OR'\n | 'AND';\n\nexport interface EnvironmentCondition\n extends EnvironmentConditionConditionOneOf {\n experimentCondition?: ExperimentCondition;\n}\n\n/** @oneof */\nexport interface EnvironmentConditionConditionOneOf {\n experimentCondition?: ExperimentCondition;\n}\n\nexport interface ExperimentCondition {\n spec?: string;\n fallbackValue?: string;\n expectedValue?: string;\n}\n\nexport interface Condition {\n /** The unique identifier of the condition model. Indicates which actions the condition is working on */\n conditionModelId?: string;\n /** The operator that should be evaluated */\n operator?: ConditionOperator;\n}\n\nexport interface ConditionOperator extends ConditionOperatorOperatorsOneOf {\n /** Comparison of equality - will be evaluated to true if the given parties are equal */\n equals?: EqualOperator;\n /** Regex operator - will be evaluated to true if the given value matches the provided regex */\n like?: LikeOperator;\n /** Petri experiment - will be evaluated using petri. */\n experiment?: ExperimentOperator;\n /** Operator that indicates a dependency on another subject being allowed to perform something. */\n dependOn?: DependOnOperator;\n}\n\n/** @oneof */\nexport interface ConditionOperatorOperatorsOneOf {\n /** Comparison of equality - will be evaluated to true if the given parties are equal */\n equals?: EqualOperator;\n /** Regex operator - will be evaluated to true if the given value matches the provided regex */\n like?: LikeOperator;\n /** Petri experiment - will be evaluated using petri. */\n experiment?: ExperimentOperator;\n /** Operator that indicates a dependency on another subject being allowed to perform something. */\n dependOn?: DependOnOperator;\n}\n\nexport interface EqualOperator {\n /** The attribute which should be compared. The attribute will be first evaluated to a value, and then compared the other side (attribute/value) */\n attrName?: string;\n /** The value to compare to. If the two parties are equal - we will return true. */\n value?: ConditionValue;\n}\n\nexport interface ConditionValue extends ConditionValueValueOneOf {\n /** an attribute. We'll first retrieve the value of the attribute (from the request or from pre-indexed values), and then compare to what it needs to be compared with. */\n attrName?: string;\n /** a value with a string type. Will be compared to the attribute provided, and be true only if they match the operator. */\n stringValue?: string;\n /** a value with a boolean type. Will be compared to the attribute provided, and be true only if they match the operator. */\n boolValue?: boolean;\n}\n\n/** @oneof */\nexport interface ConditionValueValueOneOf {\n /** an attribute. We'll first retrieve the value of the attribute (from the request or from pre-indexed values), and then compare to what it needs to be compared with. */\n attrName?: string;\n /** a value with a string type. Will be compared to the attribute provided, and be true only if they match the operator. */\n stringValue?: string;\n /** a value with a boolean type. Will be compared to the attribute provided, and be true only if they match the operator. */\n boolValue?: boolean;\n}\n\nexport interface LikeOperator {\n /** The attribute which should be compared. The attribute will be first evaluated to a value, and then compared the regex values provided. */\n attrName?: string;\n /** The regex values which the attribute value should be evaluated on. If the attribute value matches at least one of the regular expressions provided - we will return true */\n values?: string[];\n}\n\nexport interface ExperimentOperator {\n /** The spec to conduct the experiment on. */\n spec?: string;\n /** The value to use if the experiment could not be conducted */\n fallbackValue?: string;\n /** The expected value of the experiment conduction. If it matches the actual value - true will be returned. Otherwise - false. */\n expectedValue?: string;\n}\n\n/** Implies that the policy takes affect only if the depend on subject is permitted as well. */\nexport interface DependOnOperator {\n /** The subject on which the current entry depends on. If the subject is allowed to perform what the query was about - the condition will be evaluated to true. Otherwise - false */\n dependOnSubject?: Subject;\n}\n\nexport interface PolicyUnassigned {\n subject?: Subject;\n assignment?: PolicyAssignment[];\n}\n\nexport interface PolicyAssignmentUpdated {\n subject?: Subject;\n fromAssignment?: PolicyAssignment[];\n toAssignment?: PolicyAssignment[];\n}\n\nexport interface Empty {}\n\nexport interface PolicyAuthorizationDataUpdated {\n policyId?: string;\n fromPolicyStatements?: PolicyStatement[];\n toPolicyStatements?: PolicyStatement[];\n policyType?: PolicyTypeWithLiterals;\n policyOwner?: PolicyOwner;\n}\n\nexport interface PolicyStatement {\n /** @readonly */\n _id?: string | null;\n permissions?: string[];\n scopes?: string[];\n effect?: EffectWithLiterals;\n condition?: PolicyCondition;\n}\n\nexport enum Effect {\n UNKNOWN_EFFECT = 'UNKNOWN_EFFECT',\n ALLOW = 'ALLOW',\n DENY = 'DENY',\n}\n\n/** @enumType */\nexport type EffectWithLiterals = Effect | 'UNKNOWN_EFFECT' | 'ALLOW' | 'DENY';\n\nexport enum PolicyType {\n UNKNOWN_STATUS = 'UNKNOWN_STATUS',\n PREDEFINED = 'PREDEFINED',\n CUSTOM = 'CUSTOM',\n INLINE_CUSTOM = 'INLINE_CUSTOM',\n}\n\n/** @enumType */\nexport type PolicyTypeWithLiterals =\n | PolicyType\n | 'UNKNOWN_STATUS'\n | 'PREDEFINED'\n | 'CUSTOM'\n | 'INLINE_CUSTOM';\n\nexport interface PolicyOwner {\n type?: PolicyOwnerTypeWithLiterals;\n _id?: string;\n}\n\nexport enum PolicyOwnerType {\n UNKNOWN_TYPE = 'UNKNOWN_TYPE',\n WIX = 'WIX',\n WIX_ACCOUNT = 'WIX_ACCOUNT',\n}\n\n/** @enumType */\nexport type PolicyOwnerTypeWithLiterals =\n | PolicyOwnerType\n | 'UNKNOWN_TYPE'\n | 'WIX'\n | 'WIX_ACCOUNT';\n\nexport interface DomainEvent extends DomainEventBodyOneOf {\n createdEvent?: EntityCreatedEvent;\n updatedEvent?: EntityUpdatedEvent;\n deletedEvent?: EntityDeletedEvent;\n actionEvent?: ActionEvent;\n /** Event ID. With this ID you can easily spot duplicated events and ignore them. */\n _id?: string;\n /**\n * Fully Qualified Domain Name of an entity. This is a unique identifier assigned to the API main business entities.\n * For example, `wix.stores.catalog.product`, `wix.bookings.session`, `wix.payments.transaction`.\n */\n entityFqdn?: string;\n /**\n * Event action name, placed at the top level to make it easier for users to dispatch messages.\n * For example: `created`/`updated`/`deleted`/`started`/`completed`/`email_opened`.\n */\n slug?: string;\n /** ID of the entity associated with the event. */\n entityId?: string;\n /** Event timestamp in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format and UTC time. For example, `2020-04-26T13:57:50.699Z`. */\n eventTime?: Date | null;\n /**\n * Whether the event was triggered as a result of a privacy regulation application\n * (for example, GDPR).\n */\n triggeredByAnonymizeRequest?: boolean | null;\n /** If present, indicates the action that triggered the event. */\n originatedFrom?: string | null;\n /**\n * A sequence number that indicates the order of updates to an entity. For example, if an entity was updated at 16:00 and then again at 16:01, the second update will always have a higher sequence number.\n * You can use this number to make sure you're handling updates in the right order. Just save the latest sequence number on your end and compare it to the one in each new message. If the new message has an older (lower) number, you can safely ignore it.\n */\n entityEventSequence?: string | null;\n}\n\n/** @oneof */\nexport interface DomainEventBodyOneOf {\n createdEvent?: EntityCreatedEvent;\n updatedEvent?: EntityUpdatedEvent;\n deletedEvent?: EntityDeletedEvent;\n actionEvent?: ActionEvent;\n}\n\nexport interface EntityCreatedEvent {\n entity?: string;\n}\n\nexport interface RestoreInfo {\n deletedDate?: Date | null;\n}\n\nexport interface EntityUpdatedEvent {\n /**\n * Since platformized APIs only expose PATCH and not PUT we can't assume that the fields sent from the client are the actual diff.\n * This means that to generate a list of changed fields (as opposed to sent fields) one needs to traverse both objects.\n * We don't want to impose this on all developers and so we leave this traversal to the notification recipients which need it.\n */\n currentEntity?: string;\n}\n\nexport interface EntityDeletedEvent {\n /** Entity that was deleted. */\n deletedEntity?: string | null;\n}\n\nexport interface ActionEvent {\n body?: string;\n}\n\ntype DataPermissionsNonNullablePaths =\n | `_id`\n | `itemRead`\n | `itemInsert`\n | `itemUpdate`\n | `itemRemove`;\n\n/**\n * Returns data permissions for a data collection\n * @param dataCollectionId - Data Collection ID to get permissions for\n * @public\n * @documentationMaturity preview\n * @requiredField dataCollectionId\n * @permissionId WIX_DATA.PERMISSIONS_READ\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.GetPermissions\n */\nexport async function getPermissions(\n dataCollectionId: string\n): Promise<\n NonNullablePaths<\n GetPermissionsResponse,\n {\n [P in DataPermissionsNonNullablePaths]: `dataPermissions.${P}`;\n }[DataPermissionsNonNullablePaths]\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n dataCollectionId: dataCollectionId,\n });\n\n const reqOpts = ambassadorWixDataV1DataPermissions.getPermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { dataCollectionId: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['dataCollectionId']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Updates data permissions for a data collection\n *\n * NOTE that special permissions are not updated using this API, use dedicated methods for it.\n * @param dataPermissions - Data permissions to update\n * @public\n * @documentationMaturity preview\n * @requiredField dataPermissions\n * @requiredField dataPermissions._id\n * @requiredField dataPermissions.itemInsert\n * @requiredField dataPermissions.itemRead\n * @requiredField dataPermissions.itemRemove\n * @requiredField dataPermissions.itemUpdate\n * @permissionId WIX_DATA.PERMISSIONS_UPDATE\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.UpdatePermissions\n */\nexport async function updatePermissions(\n dataPermissions: NonNullablePaths<\n DataPermissions,\n `_id` | `itemInsert` | `itemRead` | `itemRemove` | `itemUpdate`\n >\n): Promise<\n NonNullablePaths<\n UpdatePermissionsResponse,\n {\n [P in DataPermissionsNonNullablePaths]: `dataPermissions.${P}`;\n }[DataPermissionsNonNullablePaths]\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n dataPermissions: dataPermissions,\n });\n\n const reqOpts = ambassadorWixDataV1DataPermissions.updatePermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { dataPermissions: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['dataPermissions']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Adds special data permissions for particular user/group\n * Errors:\n * - `ALREADY_EXISTS` in case if special permission for same subject already exists\n * @param dataCollectionId - Data Collection ID to add special permission for\n * @public\n * @documentationMaturity preview\n * @requiredField dataCollectionId\n * @requiredField options\n * @requiredField options.specialPermissions\n * @permissionId WIX_DATA.PERMISSIONS_UPDATE_SPECIAL\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.AddSpecialPermissions\n */\nexport async function addSpecialPermissions(\n dataCollectionId: string,\n options: NonNullablePaths<AddSpecialPermissionsOptions, `specialPermissions`>\n): Promise<\n NonNullablePaths<\n AddSpecialPermissionsResponse,\n | `specialPermissions.userId`\n | `specialPermissions.policyId`\n | `specialPermissions._id`\n | `specialPermissions.itemRead`\n | `specialPermissions.itemInsert`\n | `specialPermissions.itemUpdate`\n | `specialPermissions.itemRemove`\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[2] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n dataCollectionId: dataCollectionId,\n specialPermissions: options?.specialPermissions,\n });\n\n const reqOpts =\n ambassadorWixDataV1DataPermissions.addSpecialPermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: {\n dataCollectionId: '$[0]',\n specialPermissions: '$[1].specialPermissions',\n },\n singleArgumentUnchanged: false,\n },\n ['dataCollectionId', 'options']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\nexport interface AddSpecialPermissionsOptions {\n /** Special permissions to add */\n specialPermissions: SpecialPermissions;\n}\n\n/**\n * Updates special data permissions for particular user/group.\n * Any omitted permissions will be set to UNSPECIFIED.\n * @param _id - ID of this special access, so it can be managed separately\n * @public\n * @documentationMaturity preview\n * @requiredField _id\n * @requiredField specialPermissions\n * @permissionId WIX_DATA.PERMISSIONS_UPDATE_SPECIAL\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.UpdateSpecialPermissions\n */\nexport async function updateSpecialPermissions(\n _id: string,\n specialPermissions: UpdateSpecialPermissions\n): Promise<\n NonNullablePaths<\n UpdateSpecialPermissionsResponse,\n | `specialPermissions.userId`\n | `specialPermissions.policyId`\n | `specialPermissions._id`\n | `specialPermissions.itemRead`\n | `specialPermissions.itemInsert`\n | `specialPermissions.itemUpdate`\n | `specialPermissions.itemRemove`\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[2] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n specialPermissions: { ...specialPermissions, id: _id },\n });\n\n const reqOpts =\n ambassadorWixDataV1DataPermissions.updateSpecialPermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: { specialPermissions: '$[1]' },\n explicitPathsToArguments: { 'specialPermissions.id': '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['_id', 'specialPermissions']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\nexport interface UpdateSpecialPermissions {\n /**\n * User ID that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n userId?: string;\n /**\n * Policy ID of (custom) role that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n policyId?: string;\n /**\n * ID of this special access, so it can be managed separately\n * @format GUID\n * @readonly\n */\n _id?: string;\n /** If data item read is allowed */\n itemRead?: AccessWithLiterals;\n /** If data item insert is allowed */\n itemInsert?: AccessWithLiterals;\n /** If data item update is allowed */\n itemUpdate?: AccessWithLiterals;\n /** If data item remove is allowed */\n itemRemove?: AccessWithLiterals;\n}\n\n/**\n * Deletes special data permissions for particular user/group\n * @param specialPermissionsId - Special permissions ID to remove\n * @public\n * @documentationMaturity preview\n * @requiredField specialPermissionsId\n * @permissionId WIX_DATA.PERMISSIONS_UPDATE_SPECIAL\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.RemoveSpecialPermissions\n */\nexport async function removeSpecialPermissions(\n specialPermissionsId: string\n): Promise<void> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n specialPermissionsId: specialPermissionsId,\n });\n\n const reqOpts =\n ambassadorWixDataV1DataPermissions.removeSpecialPermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { specialPermissionsId: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['specialPermissionsId']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Returns current user permissions for given data collection\n * @param dataCollectionId - Data Collection ID to get permission for\n * @public\n * @documentationMaturity preview\n * @requiredField dataCollectionId\n * @permissionId WIX_DATA.PERMISSIONS_GET_ALLOWED\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.GetMyPermissions\n */\nexport async function getMyPermissions(\n dataCollectionId: string\n): Promise<\n NonNullablePaths<\n GetMyPermissionsResponse,\n `itemRead` | `itemInsert` | `itemUpdate` | `itemRemove`\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n dataCollectionId: dataCollectionId,\n });\n\n const reqOpts = ambassadorWixDataV1DataPermissions.getMyPermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { dataCollectionId: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['dataCollectionId']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n","import { toURLSearchParams } from '@wix/sdk-runtime/rest-modules';\nimport { resolveUrl } from '@wix/sdk-runtime/rest-modules';\nimport { ResolveUrlOpts } from '@wix/sdk-runtime/rest-modules';\nimport { RequestOptionsFactory } from '@wix/sdk-types';\n\nfunction resolveWixCloudPermissionsV1DataPermissionsServiceUrl(\n opts: Omit<ResolveUrlOpts, 'domainToMappings'>\n) {\n const domainToMappings = {\n 'manage._base_domain_': [\n {\n srcPath: '/_api/cloud-data/v1/permissions',\n destPath: '/v1/permissions',\n },\n ],\n 'editor._base_domain_': [\n {\n srcPath: '/_api/cloud-data/v1/permissions',\n destPath: '/v1/permissions',\n },\n ],\n 'blocks._base_domain_': [\n {\n srcPath: '/_api/cloud-data/v1/permissions',\n destPath: '/v1/permissions',\n },\n ],\n 'create.editorx': [\n {\n srcPath: '/_api/cloud-data/v1/permissions',\n destPath: '/v1/permissions',\n },\n ],\n };\n\n return resolveUrl(Object.assign(opts, { domainToMappings }));\n}\n\nconst PACKAGE_NAME = '@wix/auto_sdk_data_permissions';\n\n/** Returns data permissions for a data collection */\nexport function getPermissions(payload: object): RequestOptionsFactory<any> {\n function __getPermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'GET' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.GetPermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n };\n\n return metadata;\n }\n\n return __getPermissions;\n}\n\n/**\n * Updates data permissions for a data collection\n *\n * NOTE that special permissions are not updated using this API, use dedicated methods for it.\n */\nexport function updatePermissions(payload: object): RequestOptionsFactory<any> {\n function __updatePermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'POST' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.UpdatePermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions',\n data: payload,\n host,\n }),\n data: payload,\n };\n\n return metadata;\n }\n\n return __updatePermissions;\n}\n\n/**\n * Adds special data permissions for particular user/group\n * Errors:\n * - `ALREADY_EXISTS` in case if special permission for same subject already exists\n */\nexport function addSpecialPermissions(\n payload: object\n): RequestOptionsFactory<any> {\n function __addSpecialPermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'POST' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.AddSpecialPermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions/special',\n data: payload,\n host,\n }),\n data: payload,\n };\n\n return metadata;\n }\n\n return __addSpecialPermissions;\n}\n\n/**\n * Updates special data permissions for particular user/group.\n * Any omitted permissions will be set to UNSPECIFIED.\n */\nexport function updateSpecialPermissions(\n payload: object\n): RequestOptionsFactory<any> {\n function __updateSpecialPermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'POST' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.UpdateSpecialPermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions/special/{specialPermissions.id}',\n data: payload,\n host,\n }),\n data: payload,\n };\n\n return metadata;\n }\n\n return __updateSpecialPermissions;\n}\n\n/** Deletes special data permissions for particular user/group */\nexport function removeSpecialPermissions(\n payload: object\n): RequestOptionsFactory<any> {\n function __removeSpecialPermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'DELETE' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.RemoveSpecialPermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions/special/{specialPermissionsId}',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n };\n\n return metadata;\n }\n\n return __removeSpecialPermissions;\n}\n\n/** Returns current user permissions for given data collection */\nexport function getMyPermissions(payload: object): RequestOptionsFactory<any> {\n function __getMyPermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'GET' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.GetMyPermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions/current',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n };\n\n return metadata;\n }\n\n return __getMyPermissions;\n}\n","import { HttpClient, NonNullablePaths } from '@wix/sdk-types';\nimport {\n AddSpecialPermissionsOptions,\n AddSpecialPermissionsResponse,\n DataPermissions,\n GetMyPermissionsResponse,\n GetPermissionsResponse,\n UpdatePermissionsResponse,\n UpdateSpecialPermissions,\n UpdateSpecialPermissionsResponse,\n addSpecialPermissions as universalAddSpecialPermissions,\n getMyPermissions as universalGetMyPermissions,\n getPermissions as universalGetPermissions,\n removeSpecialPermissions as universalRemoveSpecialPermissions,\n updatePermissions as universalUpdatePermissions,\n updateSpecialPermissions as universalUpdateSpecialPermissions,\n} from './data-v1-data-permissions-permissions.universal.js';\n\nexport const __metadata = { PACKAGE_NAME: '@wix/data' };\n\nexport function getPermissions(\n httpClient: HttpClient\n): GetPermissionsSignature {\n return (dataCollectionId: string) =>\n universalGetPermissions(\n dataCollectionId,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface GetPermissionsSignature {\n /**\n * Returns data permissions for a data collection\n * @param - Data Collection ID to get permissions for\n */\n (dataCollectionId: string): Promise<GetPermissionsResponse>;\n}\n\nexport function updatePermissions(\n httpClient: HttpClient\n): UpdatePermissionsSignature {\n return (\n dataPermissions: NonNullablePaths<\n DataPermissions,\n `_id` | `itemInsert` | `itemRead` | `itemRemove` | `itemUpdate`\n >\n ) =>\n universalUpdatePermissions(\n dataPermissions,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface UpdatePermissionsSignature {\n /**\n * Updates data permissions for a data collection\n *\n * NOTE that special permissions are not updated using this API, use dedicated methods for it.\n * @param - Data permissions to update\n */\n (dataPermissions: DataPermissions): Promise<UpdatePermissionsResponse>;\n}\n\nexport function addSpecialPermissions(\n httpClient: HttpClient\n): AddSpecialPermissionsSignature {\n return (\n dataCollectionId: string,\n options: NonNullablePaths<\n AddSpecialPermissionsOptions,\n `specialPermissions`\n >\n ) =>\n universalAddSpecialPermissions(\n dataCollectionId,\n options,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface AddSpecialPermissionsSignature {\n /**\n * Adds special data permissions for particular user/group\n * Errors:\n * - `ALREADY_EXISTS` in case if special permission for same subject already exists\n * @param - Data Collection ID to add special permission for\n */\n (\n dataCollectionId: string,\n options: AddSpecialPermissionsOptions\n ): Promise<AddSpecialPermissionsResponse>;\n}\n\nexport function updateSpecialPermissions(\n httpClient: HttpClient\n): UpdateSpecialPermissionsSignature {\n return (_id: string, specialPermissions: UpdateSpecialPermissions) =>\n universalUpdateSpecialPermissions(\n _id,\n specialPermissions,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface UpdateSpecialPermissionsSignature {\n /**\n * Updates special data permissions for particular user/group.\n * Any omitted permissions will be set to UNSPECIFIED.\n * @param - ID of this special access, so it can be managed separately\n */\n (\n _id: string,\n specialPermissions: UpdateSpecialPermissions\n ): Promise<UpdateSpecialPermissionsResponse>;\n}\n\nexport function removeSpecialPermissions(\n httpClient: HttpClient\n): RemoveSpecialPermissionsSignature {\n return (specialPermissionsId: string) =>\n universalRemoveSpecialPermissions(\n specialPermissionsId,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface RemoveSpecialPermissionsSignature {\n /**\n * Deletes special data permissions for particular user/group\n * @param - Special permissions ID to remove\n */\n (specialPermissionsId: string): Promise<void>;\n}\n\nexport function getMyPermissions(\n httpClient: HttpClient\n): GetMyPermissionsSignature {\n return (dataCollectionId: string) =>\n universalGetMyPermissions(\n dataCollectionId,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface GetMyPermissionsSignature {\n /**\n * Returns current user permissions for given data collection\n * @param - Data Collection ID to get permission for\n */\n (dataCollectionId: string): Promise<GetMyPermissionsResponse>;\n}\n\nexport {\n Access,\n AccessLevel,\n ActionEvent,\n AddSpecialPermissionsOptions,\n AddSpecialPermissionsRequest,\n AddSpecialPermissionsResponse,\n Condition,\n ConditionOperator,\n ConditionOperatorOperatorsOneOf,\n ConditionType,\n ConditionTypeOfOneOf,\n ConditionValue,\n ConditionValueValueOneOf,\n DataPermissions,\n DependOnOperator,\n DomainEvent,\n DomainEventBodyOneOf,\n Effect,\n Empty,\n EntityCreatedEvent,\n EntityDeletedEvent,\n EntityUpdatedEvent,\n EnvironmentCondition,\n EnvironmentConditionConditionOneOf,\n EqualOperator,\n ExperimentCondition,\n ExperimentOperator,\n GetMyPermissionsRequest,\n GetMyPermissionsResponse,\n GetPermissionsRequest,\n GetPermissionsResponse,\n JoinedCondition,\n JoinedConditionOperator,\n LikeOperator,\n MigrateCustomRolesRequest,\n MigrateCustomRolesResponse,\n PolicyAssigned,\n PolicyAssignment,\n PolicyAssignmentUpdated,\n PolicyAssignmentsUpdated,\n PolicyAssignmentsUpdatedEventOneOf,\n PolicyAuthorizationDataUpdated,\n PolicyCondition,\n PolicyOwner,\n PolicyOwnerType,\n PolicyStatement,\n PolicyType,\n PolicyUnassigned,\n RemoveSpecialPermissionsRequest,\n RemoveSpecialPermissionsResponse,\n Resource,\n ResourcePath,\n RestoreInfo,\n SimpleCondition,\n SimpleConditionOperator,\n SimpleConditionValue,\n SimpleConditionValueValueOneOf,\n SpecialPermissions,\n SpecialPermissionsSubjectOneOf,\n Subject,\n SubjectContext,\n SubjectContextType,\n SubjectType,\n UpdatePermissionsRequest,\n UpdatePermissionsResponse,\n UpdateSpecialPermissions,\n UpdateSpecialPermissionsRequest,\n UpdateSpecialPermissionsResponse,\n} from './data-v1-data-permissions-permissions.universal.js';\n","import {\n getPermissions as publicGetPermissions,\n updatePermissions as publicUpdatePermissions,\n addSpecialPermissions as publicAddSpecialPermissions,\n updateSpecialPermissions as publicUpdateSpecialPermissions,\n removeSpecialPermissions as publicRemoveSpecialPermissions,\n getMyPermissions as publicGetMyPermissions,\n} from './data-v1-data-permissions-permissions.public.js';\nimport { createRESTModule } from '@wix/sdk-runtime/rest-modules';\nimport { BuildRESTFunction, MaybeContext } from '@wix/sdk-types';\n\nexport const getPermissions: MaybeContext<\n BuildRESTFunction<typeof publicGetPermissions> & typeof publicGetPermissions\n> = /*#__PURE__*/ createRESTModule(publicGetPermissions);\nexport const updatePermissions: MaybeContext<\n BuildRESTFunction<typeof publicUpdatePermissions> &\n typeof publicUpdatePermissions\n> = /*#__PURE__*/ createRESTModule(publicUpdatePermissions);\nexport const addSpecialPermissions: MaybeContext<\n BuildRESTFunction<typeof publicAddSpecialPermissions> &\n typeof publicAddSpecialPermissions\n> = /*#__PURE__*/ createRESTModule(publicAddSpecialPermissions);\nexport const updateSpecialPermissions: MaybeContext<\n BuildRESTFunction<typeof publicUpdateSpecialPermissions> &\n typeof publicUpdateSpecialPermissions\n> = /*#__PURE__*/ createRESTModule(publicUpdateSpecialPermissions);\nexport const removeSpecialPermissions: MaybeContext<\n BuildRESTFunction<typeof publicRemoveSpecialPermissions> &\n typeof publicRemoveSpecialPermissions\n> = /*#__PURE__*/ createRESTModule(publicRemoveSpecialPermissions);\nexport const getMyPermissions: MaybeContext<\n BuildRESTFunction<typeof publicGetMyPermissions> &\n typeof publicGetMyPermissions\n> = /*#__PURE__*/ createRESTModule(publicGetMyPermissions);\n\nexport {\n AccessLevel,\n Access,\n SubjectType,\n SubjectContextType,\n SimpleConditionOperator,\n JoinedConditionOperator,\n Effect,\n PolicyType,\n PolicyOwnerType,\n} from './data-v1-data-permissions-permissions.universal.js';\nexport {\n DataPermissions,\n SpecialPermissions,\n SpecialPermissionsSubjectOneOf,\n GetPermissionsRequest,\n GetPermissionsResponse,\n UpdatePermissionsRequest,\n UpdatePermissionsResponse,\n AddSpecialPermissionsRequest,\n AddSpecialPermissionsResponse,\n UpdateSpecialPermissionsRequest,\n UpdateSpecialPermissionsResponse,\n RemoveSpecialPermissionsRequest,\n RemoveSpecialPermissionsResponse,\n GetMyPermissionsRequest,\n GetMyPermissionsResponse,\n MigrateCustomRolesRequest,\n MigrateCustomRolesResponse,\n PolicyAssignmentsUpdated,\n PolicyAssignmentsUpdatedEventOneOf,\n PolicyAssigned,\n Subject,\n SubjectContext,\n PolicyAssignment,\n ResourcePath,\n Resource,\n PolicyCondition,\n ConditionType,\n ConditionTypeOfOneOf,\n SimpleCondition,\n SimpleConditionValue,\n SimpleConditionValueValueOneOf,\n JoinedCondition,\n EnvironmentCondition,\n EnvironmentConditionConditionOneOf,\n ExperimentCondition,\n Condition,\n ConditionOperator,\n ConditionOperatorOperatorsOneOf,\n EqualOperator,\n ConditionValue,\n ConditionValueValueOneOf,\n LikeOperator,\n ExperimentOperator,\n DependOnOperator,\n PolicyUnassigned,\n PolicyAssignmentUpdated,\n Empty,\n PolicyAuthorizationDataUpdated,\n PolicyStatement,\n PolicyOwner,\n DomainEvent,\n DomainEventBodyOneOf,\n EntityCreatedEvent,\n RestoreInfo,\n EntityUpdatedEvent,\n EntityDeletedEvent,\n ActionEvent,\n AddSpecialPermissionsOptions,\n UpdateSpecialPermissions,\n} from './data-v1-data-permissions-permissions.universal.js';\n"],"mappings":"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","names":["AccessLevel","Access","SubjectType","SubjectContextType","SimpleConditionOperator","JoinedConditionOperator","Effect","PolicyType","PolicyOwnerType","getPermissions","updatePermissions","addSpecialPermissions","updateSpecialPermissions","removeSpecialPermissions","getMyPermissions","getPermissions","updatePermissions","addSpecialPermissions","updateSpecialPermissions","removeSpecialPermissions","getMyPermissions","getPermissions","updatePermissions","addSpecialPermissions","updateSpecialPermissions","removeSpecialPermissions","getMyPermissions"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../index.ts","../../../src/data-v1-data-permissions-permissions.universal.ts","../../../src/data-v1-data-permissions-permissions.http.ts","../../../src/data-v1-data-permissions-permissions.public.ts","../../../src/data-v1-data-permissions-permissions.context.ts"],"sourcesContent":["export * from './src/data-v1-data-permissions-permissions.context.js';\n","import { transformError as sdkTransformError } from '@wix/sdk-runtime/transform-error';\nimport {\n renameKeysFromSDKRequestToRESTRequest,\n renameKeysFromRESTResponseToSDKResponse,\n} from '@wix/sdk-runtime/rename-all-nested-keys';\nimport { HttpClient, NonNullablePaths } from '@wix/sdk-types';\nimport * as ambassadorWixDataV1DataPermissions from './data-v1-data-permissions-permissions.http.js';\n\n/**\n * Permissions configuration of a data collection.\n *\n * Describes who can perform certain data operations on a collection.\n */\nexport interface DataPermissions {\n /**\n * Data Collection ID that is subject of these permissions\n * @immutable\n * @maxLength 255\n */\n _id?: string;\n /** Access level for data items read */\n itemRead?: AccessLevelWithLiterals;\n /** Access level for data items insert */\n itemInsert?: AccessLevelWithLiterals;\n /** Access level for data items update */\n itemUpdate?: AccessLevelWithLiterals;\n /** Access level for data items removal */\n itemRemove?: AccessLevelWithLiterals;\n}\n\n/**\n * Describes who can perform certain action.\n * Each level includes all levels below it (except UNDEFINED).\n */\nexport enum AccessLevel {\n /** Not set */\n UNKNOWN = 'UNKNOWN',\n /** Any subject, including visitors */\n ANYONE = 'ANYONE',\n /** Any signed-in user (both site members and collaborators) */\n SITE_MEMBER = 'SITE_MEMBER',\n /** Any signed-in user, but site members only have access to own items */\n SITE_MEMBER_AUTHOR = 'SITE_MEMBER_AUTHOR',\n /** Site collaborator that has a role with CMS Access permission */\n CMS_EDITOR = 'CMS_EDITOR',\n /** CMS administrators and users or roles granted with special access */\n PRIVILEGED = 'PRIVILEGED',\n}\n\n/** @enumType */\nexport type AccessLevelWithLiterals =\n | AccessLevel\n | 'UNKNOWN'\n | 'ANYONE'\n | 'SITE_MEMBER'\n | 'SITE_MEMBER_AUTHOR'\n | 'CMS_EDITOR'\n | 'PRIVILEGED';\n\n/** Special access granted to user or role */\nexport interface SpecialPermissions extends SpecialPermissionsSubjectOneOf {\n /**\n * User ID that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n userId?: string;\n /**\n * Policy ID of (custom) role that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n policyId?: string;\n /**\n * ID of this special access, so it can be managed separately\n * @format GUID\n * @readonly\n */\n _id?: string;\n /** If data item read is allowed */\n itemRead?: AccessWithLiterals;\n /** If data item insert is allowed */\n itemInsert?: AccessWithLiterals;\n /** If data item update is allowed */\n itemUpdate?: AccessWithLiterals;\n /** If data item remove is allowed */\n itemRemove?: AccessWithLiterals;\n}\n\n/** @oneof */\nexport interface SpecialPermissionsSubjectOneOf {\n /**\n * User ID that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n userId?: string;\n /**\n * Policy ID of (custom) role that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n policyId?: string;\n}\n\nexport enum Access {\n /** Action is not specifically allowed, but can be allowed by top-level permissions */\n UNSPECIFIED = 'UNSPECIFIED',\n /** Action is specifically allowed */\n ALLOWED = 'ALLOWED',\n}\n\n/** @enumType */\nexport type AccessWithLiterals = Access | 'UNSPECIFIED' | 'ALLOWED';\n\nexport interface GetPermissionsRequest {\n /**\n * Data Collection ID to get permissions for\n * @maxLength 256\n */\n dataCollectionId: string;\n}\n\nexport interface GetPermissionsResponse {\n /** Requested data permissions */\n dataPermissions?: DataPermissions;\n}\n\nexport interface UpdatePermissionsRequest {\n /** Data permissions to update */\n dataPermissions: DataPermissions;\n}\n\nexport interface UpdatePermissionsResponse {\n /** Updated data permissions */\n dataPermissions?: DataPermissions;\n}\n\nexport interface AddSpecialPermissionsRequest {\n /**\n * Data Collection ID to add special permission for\n * @maxLength 256\n */\n dataCollectionId: string;\n /** Special permissions to add */\n specialPermissions: SpecialPermissions;\n}\n\nexport interface AddSpecialPermissionsResponse {\n /** Added special data permissions */\n specialPermissions?: SpecialPermissions;\n}\n\nexport interface UpdateSpecialPermissionsRequest {\n /** Special permissions to update */\n specialPermissions: SpecialPermissions;\n}\n\nexport interface UpdateSpecialPermissionsResponse {\n /** Updated special data permissions */\n specialPermissions?: SpecialPermissions;\n}\n\nexport interface RemoveSpecialPermissionsRequest {\n /**\n * Special permissions ID to remove\n * @format GUID\n */\n specialPermissionsId: string;\n}\n\nexport interface RemoveSpecialPermissionsResponse {}\n\nexport interface GetMyPermissionsRequest {\n /**\n * Data Collection ID to get permission for\n * @maxLength 256\n */\n dataCollectionId: string;\n}\n\nexport interface GetMyPermissionsResponse {\n /** If data item read is allowed */\n itemRead?: boolean;\n /** If data item insert is allowed */\n itemInsert?: boolean;\n /** If data item update is allowed */\n itemUpdate?: boolean;\n /** If data item remove is allowed */\n itemRemove?: boolean;\n}\n\nexport interface MigrateCustomRolesRequest {\n /**\n * Role ID to update, if empty updates all roles in scope\n * @format GUID\n */\n policyId?: string | null;\n}\n\nexport interface MigrateCustomRolesResponse {}\n\nexport interface PolicyAssignmentsUpdated\n extends PolicyAssignmentsUpdatedEventOneOf {\n policyAssigned?: PolicyAssigned;\n policyUnassigned?: PolicyUnassigned;\n policyAssignmentUpdated?: PolicyAssignmentUpdated;\n}\n\n/** @oneof */\nexport interface PolicyAssignmentsUpdatedEventOneOf {\n policyAssigned?: PolicyAssigned;\n policyUnassigned?: PolicyUnassigned;\n policyAssignmentUpdated?: PolicyAssignmentUpdated;\n}\n\nexport interface PolicyAssigned {\n subject?: Subject;\n assignment?: PolicyAssignment[];\n}\n\nexport interface Subject {\n /** ID of identity assigned to the asset. */\n _id?: string;\n /** Type of identity assigned to the asset. Supported subject types include user IDs, account IDs, and app IDs. */\n subjectType?: SubjectTypeWithLiterals;\n /** Context of identity assigned to the asset. For example, a `subjectType` = `USER` will have `context` = `ACCOUNT`. */\n context?: SubjectContext;\n}\n\nexport enum SubjectType {\n UNKNOWN = 'UNKNOWN',\n ACCOUNT = 'ACCOUNT',\n USER = 'USER',\n USER_GROUP = 'USER_GROUP',\n MEMBER_GROUP = 'MEMBER_GROUP',\n VISITOR_GROUP = 'VISITOR_GROUP',\n EXTERNAL_APP = 'EXTERNAL_APP',\n ACCOUNT_GROUP = 'ACCOUNT_GROUP',\n WIX_APP = 'WIX_APP',\n}\n\n/** @enumType */\nexport type SubjectTypeWithLiterals =\n | SubjectType\n | 'UNKNOWN'\n | 'ACCOUNT'\n | 'USER'\n | 'USER_GROUP'\n | 'MEMBER_GROUP'\n | 'VISITOR_GROUP'\n | 'EXTERNAL_APP'\n | 'ACCOUNT_GROUP'\n | 'WIX_APP';\n\nexport interface SubjectContext {\n _id?: string;\n contextType?: SubjectContextTypeWithLiterals;\n}\n\nexport enum SubjectContextType {\n UNKNOWN_CTX = 'UNKNOWN_CTX',\n ORG_CTX = 'ORG_CTX',\n ACCOUNT_CTX = 'ACCOUNT_CTX',\n}\n\n/** @enumType */\nexport type SubjectContextTypeWithLiterals =\n | SubjectContextType\n | 'UNKNOWN_CTX'\n | 'ORG_CTX'\n | 'ACCOUNT_CTX';\n\nexport interface PolicyAssignment {\n policyId?: string;\n resource?: ResourcePath;\n condition?: PolicyCondition;\n assignmentId?: string | null;\n}\n\nexport interface ResourcePath {\n organization?: string | null;\n account?: string | null;\n site?: string | null;\n resource?: Resource;\n}\n\n/**\n * A custom resource. Is used to represent some asset that is not a direct resource context (site or account), but something custom.\n * For example: payment method, blog post, domain, logo.\n */\nexport interface Resource {\n /** The resource id. */\n _id?: string | null;\n /** The resource type */\n type?: string | null;\n}\n\nexport interface PolicyCondition {\n /** The type of the condition */\n condition?: ConditionType;\n}\n\nexport interface ConditionType extends ConditionTypeOfOneOf {\n /** @deprecated */\n simpleCondition?: SimpleCondition;\n /** A logic combination between several conditions, with an operator between them */\n joinedConditions?: JoinedCondition;\n /** @deprecated */\n environmentCondition?: EnvironmentCondition;\n /** A single condition */\n condition?: Condition;\n}\n\n/** @oneof */\nexport interface ConditionTypeOfOneOf {\n /** @deprecated */\n simpleCondition?: SimpleCondition;\n /** A logic combination between several conditions, with an operator between them */\n joinedConditions?: JoinedCondition;\n /** @deprecated */\n environmentCondition?: EnvironmentCondition;\n /** A single condition */\n condition?: Condition;\n}\n\nexport interface SimpleCondition {\n attrName?: string;\n value?: SimpleConditionValue;\n op?: SimpleConditionOperatorWithLiterals;\n conditionModelId?: string;\n}\n\nexport interface SimpleConditionValue extends SimpleConditionValueValueOneOf {\n attrName?: string;\n stringValue?: string;\n boolValue?: boolean;\n}\n\n/** @oneof */\nexport interface SimpleConditionValueValueOneOf {\n attrName?: string;\n stringValue?: string;\n boolValue?: boolean;\n}\n\nexport enum SimpleConditionOperator {\n UNKNOWN_SIMPLE_OP = 'UNKNOWN_SIMPLE_OP',\n EQUAL = 'EQUAL',\n}\n\n/** @enumType */\nexport type SimpleConditionOperatorWithLiterals =\n | SimpleConditionOperator\n | 'UNKNOWN_SIMPLE_OP'\n | 'EQUAL';\n\nexport interface JoinedCondition {\n /** The operator that should be used when evaluating the condition */\n op?: JoinedConditionOperatorWithLiterals;\n /** The conditions that should be evaluated, and then joined using the operator provided */\n conditions?: ConditionType[];\n}\n\nexport enum JoinedConditionOperator {\n UNKNOWN_JOIN_OP = 'UNKNOWN_JOIN_OP',\n OR = 'OR',\n AND = 'AND',\n}\n\n/** @enumType */\nexport type JoinedConditionOperatorWithLiterals =\n | JoinedConditionOperator\n | 'UNKNOWN_JOIN_OP'\n | 'OR'\n | 'AND';\n\nexport interface EnvironmentCondition\n extends EnvironmentConditionConditionOneOf {\n experimentCondition?: ExperimentCondition;\n}\n\n/** @oneof */\nexport interface EnvironmentConditionConditionOneOf {\n experimentCondition?: ExperimentCondition;\n}\n\nexport interface ExperimentCondition {\n spec?: string;\n fallbackValue?: string;\n expectedValue?: string;\n}\n\nexport interface Condition {\n /** The unique identifier of the condition model. Indicates which actions the condition is working on */\n conditionModelId?: string;\n /** The operator that should be evaluated */\n operator?: ConditionOperator;\n}\n\nexport interface ConditionOperator extends ConditionOperatorOperatorsOneOf {\n /** Comparison of equality - will be evaluated to true if the given parties are equal */\n equals?: EqualOperator;\n /** Regex operator - will be evaluated to true if the given value matches the provided regex */\n like?: LikeOperator;\n /** Petri experiment - will be evaluated using petri. */\n experiment?: ExperimentOperator;\n /** Operator that indicates a dependency on another subject being allowed to perform something. */\n dependOn?: DependOnOperator;\n}\n\n/** @oneof */\nexport interface ConditionOperatorOperatorsOneOf {\n /** Comparison of equality - will be evaluated to true if the given parties are equal */\n equals?: EqualOperator;\n /** Regex operator - will be evaluated to true if the given value matches the provided regex */\n like?: LikeOperator;\n /** Petri experiment - will be evaluated using petri. */\n experiment?: ExperimentOperator;\n /** Operator that indicates a dependency on another subject being allowed to perform something. */\n dependOn?: DependOnOperator;\n}\n\nexport interface EqualOperator {\n /** The attribute which should be compared. The attribute will be first evaluated to a value, and then compared the other side (attribute/value) */\n attrName?: string;\n /** The value to compare to. If the two parties are equal - we will return true. */\n value?: ConditionValue;\n}\n\nexport interface ConditionValue extends ConditionValueValueOneOf {\n /** an attribute. We'll first retrieve the value of the attribute (from the request or from pre-indexed values), and then compare to what it needs to be compared with. */\n attrName?: string;\n /** a value with a string type. Will be compared to the attribute provided, and be true only if they match the operator. */\n stringValue?: string;\n /** a value with a boolean type. Will be compared to the attribute provided, and be true only if they match the operator. */\n boolValue?: boolean;\n}\n\n/** @oneof */\nexport interface ConditionValueValueOneOf {\n /** an attribute. We'll first retrieve the value of the attribute (from the request or from pre-indexed values), and then compare to what it needs to be compared with. */\n attrName?: string;\n /** a value with a string type. Will be compared to the attribute provided, and be true only if they match the operator. */\n stringValue?: string;\n /** a value with a boolean type. Will be compared to the attribute provided, and be true only if they match the operator. */\n boolValue?: boolean;\n}\n\nexport interface LikeOperator {\n /** The attribute which should be compared. The attribute will be first evaluated to a value, and then compared the regex values provided. */\n attrName?: string;\n /** The regex values which the attribute value should be evaluated on. If the attribute value matches at least one of the regular expressions provided - we will return true */\n values?: string[];\n}\n\nexport interface ExperimentOperator {\n /** The spec to conduct the experiment on. */\n spec?: string;\n /** The value to use if the experiment could not be conducted */\n fallbackValue?: string;\n /** The expected value of the experiment conduction. If it matches the actual value - true will be returned. Otherwise - false. */\n expectedValue?: string;\n}\n\n/** Implies that the policy takes affect only if the depend on subject is permitted as well. */\nexport interface DependOnOperator {\n /** The subject on which the current entry depends on. If the subject is allowed to perform what the query was about - the condition will be evaluated to true. Otherwise - false */\n dependOnSubject?: Subject;\n}\n\nexport interface PolicyUnassigned {\n subject?: Subject;\n assignment?: PolicyAssignment[];\n}\n\nexport interface PolicyAssignmentUpdated {\n subject?: Subject;\n fromAssignment?: PolicyAssignment[];\n toAssignment?: PolicyAssignment[];\n}\n\nexport interface Empty {}\n\nexport interface PolicyAuthorizationDataUpdated {\n policyId?: string;\n fromPolicyStatements?: PolicyStatement[];\n toPolicyStatements?: PolicyStatement[];\n policyType?: PolicyTypeWithLiterals;\n policyOwner?: PolicyOwner;\n}\n\nexport interface PolicyStatement {\n /** @readonly */\n _id?: string | null;\n permissions?: string[];\n scopes?: string[];\n effect?: EffectWithLiterals;\n condition?: PolicyCondition;\n}\n\nexport enum Effect {\n UNKNOWN_EFFECT = 'UNKNOWN_EFFECT',\n ALLOW = 'ALLOW',\n DENY = 'DENY',\n}\n\n/** @enumType */\nexport type EffectWithLiterals = Effect | 'UNKNOWN_EFFECT' | 'ALLOW' | 'DENY';\n\nexport enum PolicyType {\n UNKNOWN_STATUS = 'UNKNOWN_STATUS',\n PREDEFINED = 'PREDEFINED',\n CUSTOM = 'CUSTOM',\n INLINE_CUSTOM = 'INLINE_CUSTOM',\n}\n\n/** @enumType */\nexport type PolicyTypeWithLiterals =\n | PolicyType\n | 'UNKNOWN_STATUS'\n | 'PREDEFINED'\n | 'CUSTOM'\n | 'INLINE_CUSTOM';\n\nexport interface PolicyOwner {\n type?: PolicyOwnerTypeWithLiterals;\n _id?: string;\n}\n\nexport enum PolicyOwnerType {\n UNKNOWN_TYPE = 'UNKNOWN_TYPE',\n WIX = 'WIX',\n WIX_ACCOUNT = 'WIX_ACCOUNT',\n}\n\n/** @enumType */\nexport type PolicyOwnerTypeWithLiterals =\n | PolicyOwnerType\n | 'UNKNOWN_TYPE'\n | 'WIX'\n | 'WIX_ACCOUNT';\n\nexport interface DomainEvent extends DomainEventBodyOneOf {\n createdEvent?: EntityCreatedEvent;\n updatedEvent?: EntityUpdatedEvent;\n deletedEvent?: EntityDeletedEvent;\n actionEvent?: ActionEvent;\n /** Event ID. With this ID you can easily spot duplicated events and ignore them. */\n _id?: string;\n /**\n * Fully Qualified Domain Name of an entity. This is a unique identifier assigned to the API main business entities.\n * For example, `wix.stores.catalog.product`, `wix.bookings.session`, `wix.payments.transaction`.\n */\n entityFqdn?: string;\n /**\n * Event action name, placed at the top level to make it easier for users to dispatch messages.\n * For example: `created`/`updated`/`deleted`/`started`/`completed`/`email_opened`.\n */\n slug?: string;\n /** ID of the entity associated with the event. */\n entityId?: string;\n /** Event timestamp in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format and UTC time. For example, `2020-04-26T13:57:50.699Z`. */\n eventTime?: Date | null;\n /**\n * Whether the event was triggered as a result of a privacy regulation application\n * (for example, GDPR).\n */\n triggeredByAnonymizeRequest?: boolean | null;\n /** If present, indicates the action that triggered the event. */\n originatedFrom?: string | null;\n /**\n * A sequence number that indicates the order of updates to an entity. For example, if an entity was updated at 16:00 and then again at 16:01, the second update will always have a higher sequence number.\n * You can use this number to make sure you're handling updates in the right order. Just save the latest sequence number on your end and compare it to the one in each new message. If the new message has an older (lower) number, you can safely ignore it.\n */\n entityEventSequence?: string | null;\n}\n\n/** @oneof */\nexport interface DomainEventBodyOneOf {\n createdEvent?: EntityCreatedEvent;\n updatedEvent?: EntityUpdatedEvent;\n deletedEvent?: EntityDeletedEvent;\n actionEvent?: ActionEvent;\n}\n\nexport interface EntityCreatedEvent {\n entity?: string;\n}\n\nexport interface RestoreInfo {\n deletedDate?: Date | null;\n}\n\nexport interface EntityUpdatedEvent {\n /**\n * Since platformized APIs only expose PATCH and not PUT we can't assume that the fields sent from the client are the actual diff.\n * This means that to generate a list of changed fields (as opposed to sent fields) one needs to traverse both objects.\n * We don't want to impose this on all developers and so we leave this traversal to the notification recipients which need it.\n */\n currentEntity?: string;\n}\n\nexport interface EntityDeletedEvent {\n /** Entity that was deleted. */\n deletedEntity?: string | null;\n}\n\nexport interface ActionEvent {\n body?: string;\n}\n\ntype DataPermissionsNonNullablePaths =\n | `_id`\n | `itemRead`\n | `itemInsert`\n | `itemUpdate`\n | `itemRemove`;\n\n/**\n * Returns data permissions for a data collection\n * @param dataCollectionId - Data Collection ID to get permissions for\n * @public\n * @documentationMaturity preview\n * @requiredField dataCollectionId\n * @permissionId WIX_DATA.PERMISSIONS_READ\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.GetPermissions\n */\nexport async function getPermissions(\n dataCollectionId: string\n): Promise<\n NonNullablePaths<\n GetPermissionsResponse,\n {\n [P in DataPermissionsNonNullablePaths]: `dataPermissions.${P}`;\n }[DataPermissionsNonNullablePaths]\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n dataCollectionId: dataCollectionId,\n });\n\n const reqOpts = ambassadorWixDataV1DataPermissions.getPermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { dataCollectionId: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['dataCollectionId']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Updates data permissions for a data collection\n *\n * NOTE that special permissions are not updated using this API, use dedicated methods for it.\n * @param dataPermissions - Data permissions to update\n * @public\n * @documentationMaturity preview\n * @requiredField dataPermissions\n * @requiredField dataPermissions._id\n * @requiredField dataPermissions.itemInsert\n * @requiredField dataPermissions.itemRead\n * @requiredField dataPermissions.itemRemove\n * @requiredField dataPermissions.itemUpdate\n * @permissionId WIX_DATA.PERMISSIONS_UPDATE\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.UpdatePermissions\n */\nexport async function updatePermissions(\n dataPermissions: NonNullablePaths<\n DataPermissions,\n `_id` | `itemInsert` | `itemRead` | `itemRemove` | `itemUpdate`\n >\n): Promise<\n NonNullablePaths<\n UpdatePermissionsResponse,\n {\n [P in DataPermissionsNonNullablePaths]: `dataPermissions.${P}`;\n }[DataPermissionsNonNullablePaths]\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n dataPermissions: dataPermissions,\n });\n\n const reqOpts = ambassadorWixDataV1DataPermissions.updatePermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { dataPermissions: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['dataPermissions']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Adds special data permissions for particular user/group\n * Errors:\n * - `ALREADY_EXISTS` in case if special permission for same subject already exists\n * @param dataCollectionId - Data Collection ID to add special permission for\n * @public\n * @documentationMaturity preview\n * @requiredField dataCollectionId\n * @requiredField options\n * @requiredField options.specialPermissions\n * @requiredField options.specialPermissions.subject\n * @permissionId WIX_DATA.PERMISSIONS_UPDATE_SPECIAL\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.AddSpecialPermissions\n */\nexport async function addSpecialPermissions(\n dataCollectionId: string,\n options: NonNullablePaths<AddSpecialPermissionsOptions, `specialPermissions`>\n): Promise<\n NonNullablePaths<\n AddSpecialPermissionsResponse,\n | `specialPermissions.userId`\n | `specialPermissions.policyId`\n | `specialPermissions._id`\n | `specialPermissions.itemRead`\n | `specialPermissions.itemInsert`\n | `specialPermissions.itemUpdate`\n | `specialPermissions.itemRemove`\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[2] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n dataCollectionId: dataCollectionId,\n specialPermissions: options?.specialPermissions,\n });\n\n const reqOpts =\n ambassadorWixDataV1DataPermissions.addSpecialPermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: {\n dataCollectionId: '$[0]',\n specialPermissions: '$[1].specialPermissions',\n },\n singleArgumentUnchanged: false,\n },\n ['dataCollectionId', 'options']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\nexport interface AddSpecialPermissionsOptions {\n /** Special permissions to add */\n specialPermissions: SpecialPermissions;\n}\n\n/**\n * Updates special data permissions for particular user/group.\n * Any omitted permissions will be set to UNSPECIFIED.\n * @param _id - ID of this special access, so it can be managed separately\n * @public\n * @documentationMaturity preview\n * @requiredField _id\n * @requiredField specialPermissions\n * @permissionId WIX_DATA.PERMISSIONS_UPDATE_SPECIAL\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.UpdateSpecialPermissions\n */\nexport async function updateSpecialPermissions(\n _id: string,\n specialPermissions: UpdateSpecialPermissions\n): Promise<\n NonNullablePaths<\n UpdateSpecialPermissionsResponse,\n | `specialPermissions.userId`\n | `specialPermissions.policyId`\n | `specialPermissions._id`\n | `specialPermissions.itemRead`\n | `specialPermissions.itemInsert`\n | `specialPermissions.itemUpdate`\n | `specialPermissions.itemRemove`\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[2] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n specialPermissions: { ...specialPermissions, id: _id },\n });\n\n const reqOpts =\n ambassadorWixDataV1DataPermissions.updateSpecialPermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: { specialPermissions: '$[1]' },\n explicitPathsToArguments: { 'specialPermissions.id': '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['_id', 'specialPermissions']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\nexport interface UpdateSpecialPermissions {\n /**\n * User ID that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n userId?: string;\n /**\n * Policy ID of (custom) role that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n policyId?: string;\n /**\n * ID of this special access, so it can be managed separately\n * @format GUID\n * @readonly\n */\n _id?: string;\n /** If data item read is allowed */\n itemRead?: AccessWithLiterals;\n /** If data item insert is allowed */\n itemInsert?: AccessWithLiterals;\n /** If data item update is allowed */\n itemUpdate?: AccessWithLiterals;\n /** If data item remove is allowed */\n itemRemove?: AccessWithLiterals;\n}\n\n/**\n * Deletes special data permissions for particular user/group\n * @param specialPermissionsId - Special permissions ID to remove\n * @public\n * @documentationMaturity preview\n * @requiredField specialPermissionsId\n * @permissionId WIX_DATA.PERMISSIONS_UPDATE_SPECIAL\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.RemoveSpecialPermissions\n */\nexport async function removeSpecialPermissions(\n specialPermissionsId: string\n): Promise<void> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n specialPermissionsId: specialPermissionsId,\n });\n\n const reqOpts =\n ambassadorWixDataV1DataPermissions.removeSpecialPermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { specialPermissionsId: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['specialPermissionsId']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Returns current user permissions for given data collection\n * @param dataCollectionId - Data Collection ID to get permission for\n * @public\n * @documentationMaturity preview\n * @requiredField dataCollectionId\n * @permissionId WIX_DATA.PERMISSIONS_GET_ALLOWED\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.GetMyPermissions\n */\nexport async function getMyPermissions(\n dataCollectionId: string\n): Promise<\n NonNullablePaths<\n GetMyPermissionsResponse,\n `itemRead` | `itemInsert` | `itemUpdate` | `itemRemove`\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n dataCollectionId: dataCollectionId,\n });\n\n const reqOpts = ambassadorWixDataV1DataPermissions.getMyPermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { dataCollectionId: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['dataCollectionId']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n","import { toURLSearchParams } from '@wix/sdk-runtime/rest-modules';\nimport { resolveUrl } from '@wix/sdk-runtime/rest-modules';\nimport { ResolveUrlOpts } from '@wix/sdk-runtime/rest-modules';\nimport { RequestOptionsFactory } from '@wix/sdk-types';\n\nfunction resolveWixCloudPermissionsV1DataPermissionsServiceUrl(\n opts: Omit<ResolveUrlOpts, 'domainToMappings'>\n) {\n const domainToMappings = {\n 'manage._base_domain_': [\n {\n srcPath: '/_api/cloud-data/v1/permissions',\n destPath: '/v1/permissions',\n },\n ],\n 'editor._base_domain_': [\n {\n srcPath: '/_api/cloud-data/v1/permissions',\n destPath: '/v1/permissions',\n },\n ],\n 'blocks._base_domain_': [\n {\n srcPath: '/_api/cloud-data/v1/permissions',\n destPath: '/v1/permissions',\n },\n ],\n 'create.editorx': [\n {\n srcPath: '/_api/cloud-data/v1/permissions',\n destPath: '/v1/permissions',\n },\n ],\n };\n\n return resolveUrl(Object.assign(opts, { domainToMappings }));\n}\n\nconst PACKAGE_NAME = '@wix/auto_sdk_data_permissions';\n\n/** Returns data permissions for a data collection */\nexport function getPermissions(payload: object): RequestOptionsFactory<any> {\n function __getPermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'GET' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.GetPermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n };\n\n return metadata;\n }\n\n return __getPermissions;\n}\n\n/**\n * Updates data permissions for a data collection\n *\n * NOTE that special permissions are not updated using this API, use dedicated methods for it.\n */\nexport function updatePermissions(payload: object): RequestOptionsFactory<any> {\n function __updatePermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'POST' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.UpdatePermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions',\n data: payload,\n host,\n }),\n data: payload,\n };\n\n return metadata;\n }\n\n return __updatePermissions;\n}\n\n/**\n * Adds special data permissions for particular user/group\n * Errors:\n * - `ALREADY_EXISTS` in case if special permission for same subject already exists\n */\nexport function addSpecialPermissions(\n payload: object\n): RequestOptionsFactory<any> {\n function __addSpecialPermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'POST' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.AddSpecialPermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions/special',\n data: payload,\n host,\n }),\n data: payload,\n };\n\n return metadata;\n }\n\n return __addSpecialPermissions;\n}\n\n/**\n * Updates special data permissions for particular user/group.\n * Any omitted permissions will be set to UNSPECIFIED.\n */\nexport function updateSpecialPermissions(\n payload: object\n): RequestOptionsFactory<any> {\n function __updateSpecialPermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'POST' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.UpdateSpecialPermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions/special/{specialPermissions.id}',\n data: payload,\n host,\n }),\n data: payload,\n };\n\n return metadata;\n }\n\n return __updateSpecialPermissions;\n}\n\n/** Deletes special data permissions for particular user/group */\nexport function removeSpecialPermissions(\n payload: object\n): RequestOptionsFactory<any> {\n function __removeSpecialPermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'DELETE' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.RemoveSpecialPermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions/special/{specialPermissionsId}',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n };\n\n return metadata;\n }\n\n return __removeSpecialPermissions;\n}\n\n/** Returns current user permissions for given data collection */\nexport function getMyPermissions(payload: object): RequestOptionsFactory<any> {\n function __getMyPermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'GET' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.GetMyPermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions/current',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n };\n\n return metadata;\n }\n\n return __getMyPermissions;\n}\n","import { HttpClient, NonNullablePaths } from '@wix/sdk-types';\nimport {\n AddSpecialPermissionsOptions,\n AddSpecialPermissionsResponse,\n DataPermissions,\n GetMyPermissionsResponse,\n GetPermissionsResponse,\n UpdatePermissionsResponse,\n UpdateSpecialPermissions,\n UpdateSpecialPermissionsResponse,\n addSpecialPermissions as universalAddSpecialPermissions,\n getMyPermissions as universalGetMyPermissions,\n getPermissions as universalGetPermissions,\n removeSpecialPermissions as universalRemoveSpecialPermissions,\n updatePermissions as universalUpdatePermissions,\n updateSpecialPermissions as universalUpdateSpecialPermissions,\n} from './data-v1-data-permissions-permissions.universal.js';\n\nexport const __metadata = { PACKAGE_NAME: '@wix/data' };\n\nexport function getPermissions(\n httpClient: HttpClient\n): GetPermissionsSignature {\n return (dataCollectionId: string) =>\n universalGetPermissions(\n dataCollectionId,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface GetPermissionsSignature {\n /**\n * Returns data permissions for a data collection\n * @param - Data Collection ID to get permissions for\n */\n (dataCollectionId: string): Promise<GetPermissionsResponse>;\n}\n\nexport function updatePermissions(\n httpClient: HttpClient\n): UpdatePermissionsSignature {\n return (\n dataPermissions: NonNullablePaths<\n DataPermissions,\n `_id` | `itemInsert` | `itemRead` | `itemRemove` | `itemUpdate`\n >\n ) =>\n universalUpdatePermissions(\n dataPermissions,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface UpdatePermissionsSignature {\n /**\n * Updates data permissions for a data collection\n *\n * NOTE that special permissions are not updated using this API, use dedicated methods for it.\n * @param - Data permissions to update\n */\n (dataPermissions: DataPermissions): Promise<UpdatePermissionsResponse>;\n}\n\nexport function addSpecialPermissions(\n httpClient: HttpClient\n): AddSpecialPermissionsSignature {\n return (\n dataCollectionId: string,\n options: NonNullablePaths<\n AddSpecialPermissionsOptions,\n `specialPermissions`\n >\n ) =>\n universalAddSpecialPermissions(\n dataCollectionId,\n options,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface AddSpecialPermissionsSignature {\n /**\n * Adds special data permissions for particular user/group\n * Errors:\n * - `ALREADY_EXISTS` in case if special permission for same subject already exists\n * @param - Data Collection ID to add special permission for\n */\n (\n dataCollectionId: string,\n options: AddSpecialPermissionsOptions\n ): Promise<AddSpecialPermissionsResponse>;\n}\n\nexport function updateSpecialPermissions(\n httpClient: HttpClient\n): UpdateSpecialPermissionsSignature {\n return (_id: string, specialPermissions: UpdateSpecialPermissions) =>\n universalUpdateSpecialPermissions(\n _id,\n specialPermissions,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface UpdateSpecialPermissionsSignature {\n /**\n * Updates special data permissions for particular user/group.\n * Any omitted permissions will be set to UNSPECIFIED.\n * @param - ID of this special access, so it can be managed separately\n */\n (\n _id: string,\n specialPermissions: UpdateSpecialPermissions\n ): Promise<UpdateSpecialPermissionsResponse>;\n}\n\nexport function removeSpecialPermissions(\n httpClient: HttpClient\n): RemoveSpecialPermissionsSignature {\n return (specialPermissionsId: string) =>\n universalRemoveSpecialPermissions(\n specialPermissionsId,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface RemoveSpecialPermissionsSignature {\n /**\n * Deletes special data permissions for particular user/group\n * @param - Special permissions ID to remove\n */\n (specialPermissionsId: string): Promise<void>;\n}\n\nexport function getMyPermissions(\n httpClient: HttpClient\n): GetMyPermissionsSignature {\n return (dataCollectionId: string) =>\n universalGetMyPermissions(\n dataCollectionId,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface GetMyPermissionsSignature {\n /**\n * Returns current user permissions for given data collection\n * @param - Data Collection ID to get permission for\n */\n (dataCollectionId: string): Promise<GetMyPermissionsResponse>;\n}\n\nexport {\n Access,\n AccessLevel,\n ActionEvent,\n AddSpecialPermissionsOptions,\n AddSpecialPermissionsRequest,\n AddSpecialPermissionsResponse,\n Condition,\n ConditionOperator,\n ConditionOperatorOperatorsOneOf,\n ConditionType,\n ConditionTypeOfOneOf,\n ConditionValue,\n ConditionValueValueOneOf,\n DataPermissions,\n DependOnOperator,\n DomainEvent,\n DomainEventBodyOneOf,\n Effect,\n Empty,\n EntityCreatedEvent,\n EntityDeletedEvent,\n EntityUpdatedEvent,\n EnvironmentCondition,\n EnvironmentConditionConditionOneOf,\n EqualOperator,\n ExperimentCondition,\n ExperimentOperator,\n GetMyPermissionsRequest,\n GetMyPermissionsResponse,\n GetPermissionsRequest,\n GetPermissionsResponse,\n JoinedCondition,\n JoinedConditionOperator,\n LikeOperator,\n MigrateCustomRolesRequest,\n MigrateCustomRolesResponse,\n PolicyAssigned,\n PolicyAssignment,\n PolicyAssignmentUpdated,\n PolicyAssignmentsUpdated,\n PolicyAssignmentsUpdatedEventOneOf,\n PolicyAuthorizationDataUpdated,\n PolicyCondition,\n PolicyOwner,\n PolicyOwnerType,\n PolicyStatement,\n PolicyType,\n PolicyUnassigned,\n RemoveSpecialPermissionsRequest,\n RemoveSpecialPermissionsResponse,\n Resource,\n ResourcePath,\n RestoreInfo,\n SimpleCondition,\n SimpleConditionOperator,\n SimpleConditionValue,\n SimpleConditionValueValueOneOf,\n SpecialPermissions,\n SpecialPermissionsSubjectOneOf,\n Subject,\n SubjectContext,\n SubjectContextType,\n SubjectType,\n UpdatePermissionsRequest,\n UpdatePermissionsResponse,\n UpdateSpecialPermissions,\n UpdateSpecialPermissionsRequest,\n UpdateSpecialPermissionsResponse,\n} from './data-v1-data-permissions-permissions.universal.js';\n","import {\n getPermissions as publicGetPermissions,\n updatePermissions as publicUpdatePermissions,\n addSpecialPermissions as publicAddSpecialPermissions,\n updateSpecialPermissions as publicUpdateSpecialPermissions,\n removeSpecialPermissions as publicRemoveSpecialPermissions,\n getMyPermissions as publicGetMyPermissions,\n} from './data-v1-data-permissions-permissions.public.js';\nimport { createRESTModule } from '@wix/sdk-runtime/rest-modules';\nimport { BuildRESTFunction, MaybeContext } from '@wix/sdk-types';\n\nexport const getPermissions: MaybeContext<\n BuildRESTFunction<typeof publicGetPermissions> & typeof publicGetPermissions\n> = /*#__PURE__*/ createRESTModule(publicGetPermissions);\nexport const updatePermissions: MaybeContext<\n BuildRESTFunction<typeof publicUpdatePermissions> &\n typeof publicUpdatePermissions\n> = /*#__PURE__*/ createRESTModule(publicUpdatePermissions);\nexport const addSpecialPermissions: MaybeContext<\n BuildRESTFunction<typeof publicAddSpecialPermissions> &\n typeof publicAddSpecialPermissions\n> = /*#__PURE__*/ createRESTModule(publicAddSpecialPermissions);\nexport const updateSpecialPermissions: MaybeContext<\n BuildRESTFunction<typeof publicUpdateSpecialPermissions> &\n typeof publicUpdateSpecialPermissions\n> = /*#__PURE__*/ createRESTModule(publicUpdateSpecialPermissions);\nexport const removeSpecialPermissions: MaybeContext<\n BuildRESTFunction<typeof publicRemoveSpecialPermissions> &\n typeof publicRemoveSpecialPermissions\n> = /*#__PURE__*/ createRESTModule(publicRemoveSpecialPermissions);\nexport const getMyPermissions: MaybeContext<\n BuildRESTFunction<typeof publicGetMyPermissions> &\n typeof publicGetMyPermissions\n> = /*#__PURE__*/ createRESTModule(publicGetMyPermissions);\n\nexport {\n AccessLevel,\n Access,\n SubjectType,\n SubjectContextType,\n SimpleConditionOperator,\n JoinedConditionOperator,\n Effect,\n PolicyType,\n PolicyOwnerType,\n} from './data-v1-data-permissions-permissions.universal.js';\nexport {\n DataPermissions,\n SpecialPermissions,\n SpecialPermissionsSubjectOneOf,\n GetPermissionsRequest,\n GetPermissionsResponse,\n UpdatePermissionsRequest,\n UpdatePermissionsResponse,\n AddSpecialPermissionsRequest,\n AddSpecialPermissionsResponse,\n UpdateSpecialPermissionsRequest,\n UpdateSpecialPermissionsResponse,\n RemoveSpecialPermissionsRequest,\n RemoveSpecialPermissionsResponse,\n GetMyPermissionsRequest,\n GetMyPermissionsResponse,\n MigrateCustomRolesRequest,\n MigrateCustomRolesResponse,\n PolicyAssignmentsUpdated,\n PolicyAssignmentsUpdatedEventOneOf,\n PolicyAssigned,\n Subject,\n SubjectContext,\n PolicyAssignment,\n ResourcePath,\n Resource,\n PolicyCondition,\n ConditionType,\n ConditionTypeOfOneOf,\n SimpleCondition,\n SimpleConditionValue,\n SimpleConditionValueValueOneOf,\n JoinedCondition,\n EnvironmentCondition,\n EnvironmentConditionConditionOneOf,\n ExperimentCondition,\n Condition,\n ConditionOperator,\n ConditionOperatorOperatorsOneOf,\n EqualOperator,\n ConditionValue,\n ConditionValueValueOneOf,\n LikeOperator,\n ExperimentOperator,\n DependOnOperator,\n PolicyUnassigned,\n PolicyAssignmentUpdated,\n Empty,\n PolicyAuthorizationDataUpdated,\n PolicyStatement,\n PolicyOwner,\n DomainEvent,\n DomainEventBodyOneOf,\n EntityCreatedEvent,\n RestoreInfo,\n EntityUpdatedEvent,\n EntityDeletedEvent,\n ActionEvent,\n AddSpecialPermissionsOptions,\n UpdateSpecialPermissions,\n} from './data-v1-data-permissions-permissions.universal.js';\n"],"mappings":"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","names":["addSpecialPermissions","getMyPermissions","getPermissions","removeSpecialPermissions","updatePermissions","updateSpecialPermissions","import_rest_modules","AccessLevel","Access","SubjectType","SubjectContextType","SimpleConditionOperator","JoinedConditionOperator","Effect","PolicyType","PolicyOwnerType","getPermissions","sdkTransformError","updatePermissions","addSpecialPermissions","updateSpecialPermissions","removeSpecialPermissions","getMyPermissions","getPermissions","updatePermissions","addSpecialPermissions","updateSpecialPermissions","removeSpecialPermissions","getMyPermissions","import_rest_modules","getPermissions","updatePermissions","addSpecialPermissions","updateSpecialPermissions","removeSpecialPermissions","getMyPermissions"]}
1
+ {"version":3,"sources":["../../../index.ts","../../../src/data-v1-data-permissions-permissions.universal.ts","../../../src/data-v1-data-permissions-permissions.http.ts","../../../src/data-v1-data-permissions-permissions.public.ts","../../../src/data-v1-data-permissions-permissions.context.ts"],"sourcesContent":["export * from './src/data-v1-data-permissions-permissions.context.js';\n","import { transformError as sdkTransformError } from '@wix/sdk-runtime/transform-error';\nimport {\n renameKeysFromSDKRequestToRESTRequest,\n renameKeysFromRESTResponseToSDKResponse,\n} from '@wix/sdk-runtime/rename-all-nested-keys';\nimport { HttpClient, NonNullablePaths } from '@wix/sdk-types';\nimport * as ambassadorWixDataV1DataPermissions from './data-v1-data-permissions-permissions.http.js';\n\n/**\n * Permissions configuration of a data collection.\n *\n * Describes who can perform certain data operations on a collection.\n */\nexport interface DataPermissions {\n /**\n * Data Collection ID that is subject of these permissions\n * @immutable\n * @maxLength 255\n */\n _id?: string;\n /** Access level for data items read */\n itemRead?: AccessLevelWithLiterals;\n /** Access level for data items insert */\n itemInsert?: AccessLevelWithLiterals;\n /** Access level for data items update */\n itemUpdate?: AccessLevelWithLiterals;\n /** Access level for data items removal */\n itemRemove?: AccessLevelWithLiterals;\n}\n\n/**\n * Describes who can perform certain action.\n * Each level includes all levels below it (except UNDEFINED).\n */\nexport enum AccessLevel {\n /** Not set */\n UNKNOWN = 'UNKNOWN',\n /** Any subject, including visitors */\n ANYONE = 'ANYONE',\n /** Any signed-in user (both site members and collaborators) */\n SITE_MEMBER = 'SITE_MEMBER',\n /** Any signed-in user, but site members only have access to own items */\n SITE_MEMBER_AUTHOR = 'SITE_MEMBER_AUTHOR',\n /** Site collaborator that has a role with CMS Access permission */\n CMS_EDITOR = 'CMS_EDITOR',\n /** CMS administrators and users or roles granted with special access */\n PRIVILEGED = 'PRIVILEGED',\n}\n\n/** @enumType */\nexport type AccessLevelWithLiterals =\n | AccessLevel\n | 'UNKNOWN'\n | 'ANYONE'\n | 'SITE_MEMBER'\n | 'SITE_MEMBER_AUTHOR'\n | 'CMS_EDITOR'\n | 'PRIVILEGED';\n\n/** Special access granted to user or role */\nexport interface SpecialPermissions extends SpecialPermissionsSubjectOneOf {\n /**\n * User ID that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n userId?: string;\n /**\n * Policy ID of (custom) role that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n policyId?: string;\n /**\n * ID of this special access, so it can be managed separately\n * @format GUID\n * @readonly\n */\n _id?: string;\n /** If data item read is allowed */\n itemRead?: AccessWithLiterals;\n /** If data item insert is allowed */\n itemInsert?: AccessWithLiterals;\n /** If data item update is allowed */\n itemUpdate?: AccessWithLiterals;\n /** If data item remove is allowed */\n itemRemove?: AccessWithLiterals;\n}\n\n/** @oneof */\nexport interface SpecialPermissionsSubjectOneOf {\n /**\n * User ID that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n userId?: string;\n /**\n * Policy ID of (custom) role that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n policyId?: string;\n}\n\nexport enum Access {\n /** Action is not specifically allowed, but can be allowed by top-level permissions */\n UNSPECIFIED = 'UNSPECIFIED',\n /** Action is specifically allowed */\n ALLOWED = 'ALLOWED',\n}\n\n/** @enumType */\nexport type AccessWithLiterals = Access | 'UNSPECIFIED' | 'ALLOWED';\n\nexport interface GetPermissionsRequest {\n /**\n * Data Collection ID to get permissions for\n * @maxLength 256\n */\n dataCollectionId: string;\n}\n\nexport interface GetPermissionsResponse {\n /** Requested data permissions */\n dataPermissions?: DataPermissions;\n}\n\nexport interface UpdatePermissionsRequest {\n /** Data permissions to update */\n dataPermissions: DataPermissions;\n}\n\nexport interface UpdatePermissionsResponse {\n /** Updated data permissions */\n dataPermissions?: DataPermissions;\n}\n\nexport interface AddSpecialPermissionsRequest {\n /**\n * Data Collection ID to add special permission for\n * @maxLength 256\n */\n dataCollectionId: string;\n /** Special permissions to add */\n specialPermissions: SpecialPermissions;\n}\n\nexport interface AddSpecialPermissionsResponse {\n /** Added special data permissions */\n specialPermissions?: SpecialPermissions;\n}\n\nexport interface UpdateSpecialPermissionsRequest {\n /** Special permissions to update */\n specialPermissions: SpecialPermissions;\n}\n\nexport interface UpdateSpecialPermissionsResponse {\n /** Updated special data permissions */\n specialPermissions?: SpecialPermissions;\n}\n\nexport interface RemoveSpecialPermissionsRequest {\n /**\n * Special permissions ID to remove\n * @format GUID\n */\n specialPermissionsId: string;\n}\n\nexport interface RemoveSpecialPermissionsResponse {}\n\nexport interface GetMyPermissionsRequest {\n /**\n * Data Collection ID to get permission for\n * @maxLength 256\n */\n dataCollectionId: string;\n}\n\nexport interface GetMyPermissionsResponse {\n /** If data item read is allowed */\n itemRead?: boolean;\n /** If data item insert is allowed */\n itemInsert?: boolean;\n /** If data item update is allowed */\n itemUpdate?: boolean;\n /** If data item remove is allowed */\n itemRemove?: boolean;\n}\n\nexport interface MigrateCustomRolesRequest {\n /**\n * Role ID to update, if empty updates all roles in scope\n * @format GUID\n */\n policyId?: string | null;\n}\n\nexport interface MigrateCustomRolesResponse {}\n\nexport interface PolicyAssignmentsUpdated\n extends PolicyAssignmentsUpdatedEventOneOf {\n policyAssigned?: PolicyAssigned;\n policyUnassigned?: PolicyUnassigned;\n policyAssignmentUpdated?: PolicyAssignmentUpdated;\n}\n\n/** @oneof */\nexport interface PolicyAssignmentsUpdatedEventOneOf {\n policyAssigned?: PolicyAssigned;\n policyUnassigned?: PolicyUnassigned;\n policyAssignmentUpdated?: PolicyAssignmentUpdated;\n}\n\nexport interface PolicyAssigned {\n subject?: Subject;\n assignment?: PolicyAssignment[];\n}\n\nexport interface Subject {\n /** ID of identity assigned to the asset. */\n _id?: string;\n /** Type of identity assigned to the asset. Supported subject types include user IDs, account IDs, and app IDs. */\n subjectType?: SubjectTypeWithLiterals;\n /** Context of identity assigned to the asset. For example, a `subjectType` = `USER` will have `context` = `ACCOUNT`. */\n context?: SubjectContext;\n}\n\nexport enum SubjectType {\n UNKNOWN = 'UNKNOWN',\n ACCOUNT = 'ACCOUNT',\n USER = 'USER',\n USER_GROUP = 'USER_GROUP',\n MEMBER_GROUP = 'MEMBER_GROUP',\n VISITOR_GROUP = 'VISITOR_GROUP',\n EXTERNAL_APP = 'EXTERNAL_APP',\n ACCOUNT_GROUP = 'ACCOUNT_GROUP',\n WIX_APP = 'WIX_APP',\n}\n\n/** @enumType */\nexport type SubjectTypeWithLiterals =\n | SubjectType\n | 'UNKNOWN'\n | 'ACCOUNT'\n | 'USER'\n | 'USER_GROUP'\n | 'MEMBER_GROUP'\n | 'VISITOR_GROUP'\n | 'EXTERNAL_APP'\n | 'ACCOUNT_GROUP'\n | 'WIX_APP';\n\nexport interface SubjectContext {\n _id?: string;\n contextType?: SubjectContextTypeWithLiterals;\n}\n\nexport enum SubjectContextType {\n UNKNOWN_CTX = 'UNKNOWN_CTX',\n ORG_CTX = 'ORG_CTX',\n ACCOUNT_CTX = 'ACCOUNT_CTX',\n}\n\n/** @enumType */\nexport type SubjectContextTypeWithLiterals =\n | SubjectContextType\n | 'UNKNOWN_CTX'\n | 'ORG_CTX'\n | 'ACCOUNT_CTX';\n\nexport interface PolicyAssignment {\n policyId?: string;\n resource?: ResourcePath;\n condition?: PolicyCondition;\n assignmentId?: string | null;\n}\n\nexport interface ResourcePath {\n organization?: string | null;\n account?: string | null;\n site?: string | null;\n resource?: Resource;\n}\n\n/**\n * A custom resource. Is used to represent some asset that is not a direct resource context (site or account), but something custom.\n * For example: payment method, blog post, domain, logo.\n */\nexport interface Resource {\n /** The resource id. */\n _id?: string | null;\n /** The resource type */\n type?: string | null;\n}\n\nexport interface PolicyCondition {\n /** The type of the condition */\n condition?: ConditionType;\n}\n\nexport interface ConditionType extends ConditionTypeOfOneOf {\n /** @deprecated */\n simpleCondition?: SimpleCondition;\n /** A logic combination between several conditions, with an operator between them */\n joinedConditions?: JoinedCondition;\n /** @deprecated */\n environmentCondition?: EnvironmentCondition;\n /** A single condition */\n condition?: Condition;\n}\n\n/** @oneof */\nexport interface ConditionTypeOfOneOf {\n /** @deprecated */\n simpleCondition?: SimpleCondition;\n /** A logic combination between several conditions, with an operator between them */\n joinedConditions?: JoinedCondition;\n /** @deprecated */\n environmentCondition?: EnvironmentCondition;\n /** A single condition */\n condition?: Condition;\n}\n\nexport interface SimpleCondition {\n attrName?: string;\n value?: SimpleConditionValue;\n op?: SimpleConditionOperatorWithLiterals;\n conditionModelId?: string;\n}\n\nexport interface SimpleConditionValue extends SimpleConditionValueValueOneOf {\n attrName?: string;\n stringValue?: string;\n boolValue?: boolean;\n}\n\n/** @oneof */\nexport interface SimpleConditionValueValueOneOf {\n attrName?: string;\n stringValue?: string;\n boolValue?: boolean;\n}\n\nexport enum SimpleConditionOperator {\n UNKNOWN_SIMPLE_OP = 'UNKNOWN_SIMPLE_OP',\n EQUAL = 'EQUAL',\n}\n\n/** @enumType */\nexport type SimpleConditionOperatorWithLiterals =\n | SimpleConditionOperator\n | 'UNKNOWN_SIMPLE_OP'\n | 'EQUAL';\n\nexport interface JoinedCondition {\n /** The operator that should be used when evaluating the condition */\n op?: JoinedConditionOperatorWithLiterals;\n /** The conditions that should be evaluated, and then joined using the operator provided */\n conditions?: ConditionType[];\n}\n\nexport enum JoinedConditionOperator {\n UNKNOWN_JOIN_OP = 'UNKNOWN_JOIN_OP',\n OR = 'OR',\n AND = 'AND',\n}\n\n/** @enumType */\nexport type JoinedConditionOperatorWithLiterals =\n | JoinedConditionOperator\n | 'UNKNOWN_JOIN_OP'\n | 'OR'\n | 'AND';\n\nexport interface EnvironmentCondition\n extends EnvironmentConditionConditionOneOf {\n experimentCondition?: ExperimentCondition;\n}\n\n/** @oneof */\nexport interface EnvironmentConditionConditionOneOf {\n experimentCondition?: ExperimentCondition;\n}\n\nexport interface ExperimentCondition {\n spec?: string;\n fallbackValue?: string;\n expectedValue?: string;\n}\n\nexport interface Condition {\n /** The unique identifier of the condition model. Indicates which actions the condition is working on */\n conditionModelId?: string;\n /** The operator that should be evaluated */\n operator?: ConditionOperator;\n}\n\nexport interface ConditionOperator extends ConditionOperatorOperatorsOneOf {\n /** Comparison of equality - will be evaluated to true if the given parties are equal */\n equals?: EqualOperator;\n /** Regex operator - will be evaluated to true if the given value matches the provided regex */\n like?: LikeOperator;\n /** Petri experiment - will be evaluated using petri. */\n experiment?: ExperimentOperator;\n /** Operator that indicates a dependency on another subject being allowed to perform something. */\n dependOn?: DependOnOperator;\n}\n\n/** @oneof */\nexport interface ConditionOperatorOperatorsOneOf {\n /** Comparison of equality - will be evaluated to true if the given parties are equal */\n equals?: EqualOperator;\n /** Regex operator - will be evaluated to true if the given value matches the provided regex */\n like?: LikeOperator;\n /** Petri experiment - will be evaluated using petri. */\n experiment?: ExperimentOperator;\n /** Operator that indicates a dependency on another subject being allowed to perform something. */\n dependOn?: DependOnOperator;\n}\n\nexport interface EqualOperator {\n /** The attribute which should be compared. The attribute will be first evaluated to a value, and then compared the other side (attribute/value) */\n attrName?: string;\n /** The value to compare to. If the two parties are equal - we will return true. */\n value?: ConditionValue;\n}\n\nexport interface ConditionValue extends ConditionValueValueOneOf {\n /** an attribute. We'll first retrieve the value of the attribute (from the request or from pre-indexed values), and then compare to what it needs to be compared with. */\n attrName?: string;\n /** a value with a string type. Will be compared to the attribute provided, and be true only if they match the operator. */\n stringValue?: string;\n /** a value with a boolean type. Will be compared to the attribute provided, and be true only if they match the operator. */\n boolValue?: boolean;\n}\n\n/** @oneof */\nexport interface ConditionValueValueOneOf {\n /** an attribute. We'll first retrieve the value of the attribute (from the request or from pre-indexed values), and then compare to what it needs to be compared with. */\n attrName?: string;\n /** a value with a string type. Will be compared to the attribute provided, and be true only if they match the operator. */\n stringValue?: string;\n /** a value with a boolean type. Will be compared to the attribute provided, and be true only if they match the operator. */\n boolValue?: boolean;\n}\n\nexport interface LikeOperator {\n /** The attribute which should be compared. The attribute will be first evaluated to a value, and then compared the regex values provided. */\n attrName?: string;\n /** The regex values which the attribute value should be evaluated on. If the attribute value matches at least one of the regular expressions provided - we will return true */\n values?: string[];\n}\n\nexport interface ExperimentOperator {\n /** The spec to conduct the experiment on. */\n spec?: string;\n /** The value to use if the experiment could not be conducted */\n fallbackValue?: string;\n /** The expected value of the experiment conduction. If it matches the actual value - true will be returned. Otherwise - false. */\n expectedValue?: string;\n}\n\n/** Implies that the policy takes affect only if the depend on subject is permitted as well. */\nexport interface DependOnOperator {\n /** The subject on which the current entry depends on. If the subject is allowed to perform what the query was about - the condition will be evaluated to true. Otherwise - false */\n dependOnSubject?: Subject;\n}\n\nexport interface PolicyUnassigned {\n subject?: Subject;\n assignment?: PolicyAssignment[];\n}\n\nexport interface PolicyAssignmentUpdated {\n subject?: Subject;\n fromAssignment?: PolicyAssignment[];\n toAssignment?: PolicyAssignment[];\n}\n\nexport interface Empty {}\n\nexport interface PolicyAuthorizationDataUpdated {\n policyId?: string;\n fromPolicyStatements?: PolicyStatement[];\n toPolicyStatements?: PolicyStatement[];\n policyType?: PolicyTypeWithLiterals;\n policyOwner?: PolicyOwner;\n}\n\nexport interface PolicyStatement {\n /** @readonly */\n _id?: string | null;\n permissions?: string[];\n scopes?: string[];\n effect?: EffectWithLiterals;\n condition?: PolicyCondition;\n}\n\nexport enum Effect {\n UNKNOWN_EFFECT = 'UNKNOWN_EFFECT',\n ALLOW = 'ALLOW',\n DENY = 'DENY',\n}\n\n/** @enumType */\nexport type EffectWithLiterals = Effect | 'UNKNOWN_EFFECT' | 'ALLOW' | 'DENY';\n\nexport enum PolicyType {\n UNKNOWN_STATUS = 'UNKNOWN_STATUS',\n PREDEFINED = 'PREDEFINED',\n CUSTOM = 'CUSTOM',\n INLINE_CUSTOM = 'INLINE_CUSTOM',\n}\n\n/** @enumType */\nexport type PolicyTypeWithLiterals =\n | PolicyType\n | 'UNKNOWN_STATUS'\n | 'PREDEFINED'\n | 'CUSTOM'\n | 'INLINE_CUSTOM';\n\nexport interface PolicyOwner {\n type?: PolicyOwnerTypeWithLiterals;\n _id?: string;\n}\n\nexport enum PolicyOwnerType {\n UNKNOWN_TYPE = 'UNKNOWN_TYPE',\n WIX = 'WIX',\n WIX_ACCOUNT = 'WIX_ACCOUNT',\n}\n\n/** @enumType */\nexport type PolicyOwnerTypeWithLiterals =\n | PolicyOwnerType\n | 'UNKNOWN_TYPE'\n | 'WIX'\n | 'WIX_ACCOUNT';\n\nexport interface DomainEvent extends DomainEventBodyOneOf {\n createdEvent?: EntityCreatedEvent;\n updatedEvent?: EntityUpdatedEvent;\n deletedEvent?: EntityDeletedEvent;\n actionEvent?: ActionEvent;\n /** Event ID. With this ID you can easily spot duplicated events and ignore them. */\n _id?: string;\n /**\n * Fully Qualified Domain Name of an entity. This is a unique identifier assigned to the API main business entities.\n * For example, `wix.stores.catalog.product`, `wix.bookings.session`, `wix.payments.transaction`.\n */\n entityFqdn?: string;\n /**\n * Event action name, placed at the top level to make it easier for users to dispatch messages.\n * For example: `created`/`updated`/`deleted`/`started`/`completed`/`email_opened`.\n */\n slug?: string;\n /** ID of the entity associated with the event. */\n entityId?: string;\n /** Event timestamp in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format and UTC time. For example, `2020-04-26T13:57:50.699Z`. */\n eventTime?: Date | null;\n /**\n * Whether the event was triggered as a result of a privacy regulation application\n * (for example, GDPR).\n */\n triggeredByAnonymizeRequest?: boolean | null;\n /** If present, indicates the action that triggered the event. */\n originatedFrom?: string | null;\n /**\n * A sequence number that indicates the order of updates to an entity. For example, if an entity was updated at 16:00 and then again at 16:01, the second update will always have a higher sequence number.\n * You can use this number to make sure you're handling updates in the right order. Just save the latest sequence number on your end and compare it to the one in each new message. If the new message has an older (lower) number, you can safely ignore it.\n */\n entityEventSequence?: string | null;\n}\n\n/** @oneof */\nexport interface DomainEventBodyOneOf {\n createdEvent?: EntityCreatedEvent;\n updatedEvent?: EntityUpdatedEvent;\n deletedEvent?: EntityDeletedEvent;\n actionEvent?: ActionEvent;\n}\n\nexport interface EntityCreatedEvent {\n entity?: string;\n}\n\nexport interface RestoreInfo {\n deletedDate?: Date | null;\n}\n\nexport interface EntityUpdatedEvent {\n /**\n * Since platformized APIs only expose PATCH and not PUT we can't assume that the fields sent from the client are the actual diff.\n * This means that to generate a list of changed fields (as opposed to sent fields) one needs to traverse both objects.\n * We don't want to impose this on all developers and so we leave this traversal to the notification recipients which need it.\n */\n currentEntity?: string;\n}\n\nexport interface EntityDeletedEvent {\n /** Entity that was deleted. */\n deletedEntity?: string | null;\n}\n\nexport interface ActionEvent {\n body?: string;\n}\n\ntype DataPermissionsNonNullablePaths =\n | `_id`\n | `itemRead`\n | `itemInsert`\n | `itemUpdate`\n | `itemRemove`;\n\n/**\n * Returns data permissions for a data collection\n * @param dataCollectionId - Data Collection ID to get permissions for\n * @public\n * @documentationMaturity preview\n * @requiredField dataCollectionId\n * @permissionId WIX_DATA.PERMISSIONS_READ\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.GetPermissions\n */\nexport async function getPermissions(\n dataCollectionId: string\n): Promise<\n NonNullablePaths<\n GetPermissionsResponse,\n {\n [P in DataPermissionsNonNullablePaths]: `dataPermissions.${P}`;\n }[DataPermissionsNonNullablePaths]\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n dataCollectionId: dataCollectionId,\n });\n\n const reqOpts = ambassadorWixDataV1DataPermissions.getPermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { dataCollectionId: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['dataCollectionId']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Updates data permissions for a data collection\n *\n * NOTE that special permissions are not updated using this API, use dedicated methods for it.\n * @param dataPermissions - Data permissions to update\n * @public\n * @documentationMaturity preview\n * @requiredField dataPermissions\n * @requiredField dataPermissions._id\n * @requiredField dataPermissions.itemInsert\n * @requiredField dataPermissions.itemRead\n * @requiredField dataPermissions.itemRemove\n * @requiredField dataPermissions.itemUpdate\n * @permissionId WIX_DATA.PERMISSIONS_UPDATE\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.UpdatePermissions\n */\nexport async function updatePermissions(\n dataPermissions: NonNullablePaths<\n DataPermissions,\n `_id` | `itemInsert` | `itemRead` | `itemRemove` | `itemUpdate`\n >\n): Promise<\n NonNullablePaths<\n UpdatePermissionsResponse,\n {\n [P in DataPermissionsNonNullablePaths]: `dataPermissions.${P}`;\n }[DataPermissionsNonNullablePaths]\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n dataPermissions: dataPermissions,\n });\n\n const reqOpts = ambassadorWixDataV1DataPermissions.updatePermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { dataPermissions: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['dataPermissions']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Adds special data permissions for particular user/group\n * Errors:\n * - `ALREADY_EXISTS` in case if special permission for same subject already exists\n * @param dataCollectionId - Data Collection ID to add special permission for\n * @public\n * @documentationMaturity preview\n * @requiredField dataCollectionId\n * @requiredField options\n * @requiredField options.specialPermissions\n * @permissionId WIX_DATA.PERMISSIONS_UPDATE_SPECIAL\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.AddSpecialPermissions\n */\nexport async function addSpecialPermissions(\n dataCollectionId: string,\n options: NonNullablePaths<AddSpecialPermissionsOptions, `specialPermissions`>\n): Promise<\n NonNullablePaths<\n AddSpecialPermissionsResponse,\n | `specialPermissions.userId`\n | `specialPermissions.policyId`\n | `specialPermissions._id`\n | `specialPermissions.itemRead`\n | `specialPermissions.itemInsert`\n | `specialPermissions.itemUpdate`\n | `specialPermissions.itemRemove`\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[2] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n dataCollectionId: dataCollectionId,\n specialPermissions: options?.specialPermissions,\n });\n\n const reqOpts =\n ambassadorWixDataV1DataPermissions.addSpecialPermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: {\n dataCollectionId: '$[0]',\n specialPermissions: '$[1].specialPermissions',\n },\n singleArgumentUnchanged: false,\n },\n ['dataCollectionId', 'options']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\nexport interface AddSpecialPermissionsOptions {\n /** Special permissions to add */\n specialPermissions: SpecialPermissions;\n}\n\n/**\n * Updates special data permissions for particular user/group.\n * Any omitted permissions will be set to UNSPECIFIED.\n * @param _id - ID of this special access, so it can be managed separately\n * @public\n * @documentationMaturity preview\n * @requiredField _id\n * @requiredField specialPermissions\n * @permissionId WIX_DATA.PERMISSIONS_UPDATE_SPECIAL\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.UpdateSpecialPermissions\n */\nexport async function updateSpecialPermissions(\n _id: string,\n specialPermissions: UpdateSpecialPermissions\n): Promise<\n NonNullablePaths<\n UpdateSpecialPermissionsResponse,\n | `specialPermissions.userId`\n | `specialPermissions.policyId`\n | `specialPermissions._id`\n | `specialPermissions.itemRead`\n | `specialPermissions.itemInsert`\n | `specialPermissions.itemUpdate`\n | `specialPermissions.itemRemove`\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[2] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n specialPermissions: { ...specialPermissions, id: _id },\n });\n\n const reqOpts =\n ambassadorWixDataV1DataPermissions.updateSpecialPermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: { specialPermissions: '$[1]' },\n explicitPathsToArguments: { 'specialPermissions.id': '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['_id', 'specialPermissions']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\nexport interface UpdateSpecialPermissions {\n /**\n * User ID that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n userId?: string;\n /**\n * Policy ID of (custom) role that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n policyId?: string;\n /**\n * ID of this special access, so it can be managed separately\n * @format GUID\n * @readonly\n */\n _id?: string;\n /** If data item read is allowed */\n itemRead?: AccessWithLiterals;\n /** If data item insert is allowed */\n itemInsert?: AccessWithLiterals;\n /** If data item update is allowed */\n itemUpdate?: AccessWithLiterals;\n /** If data item remove is allowed */\n itemRemove?: AccessWithLiterals;\n}\n\n/**\n * Deletes special data permissions for particular user/group\n * @param specialPermissionsId - Special permissions ID to remove\n * @public\n * @documentationMaturity preview\n * @requiredField specialPermissionsId\n * @permissionId WIX_DATA.PERMISSIONS_UPDATE_SPECIAL\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.RemoveSpecialPermissions\n */\nexport async function removeSpecialPermissions(\n specialPermissionsId: string\n): Promise<void> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n specialPermissionsId: specialPermissionsId,\n });\n\n const reqOpts =\n ambassadorWixDataV1DataPermissions.removeSpecialPermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { specialPermissionsId: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['specialPermissionsId']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Returns current user permissions for given data collection\n * @param dataCollectionId - Data Collection ID to get permission for\n * @public\n * @documentationMaturity preview\n * @requiredField dataCollectionId\n * @permissionId WIX_DATA.PERMISSIONS_GET_ALLOWED\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.GetMyPermissions\n */\nexport async function getMyPermissions(\n dataCollectionId: string\n): Promise<\n NonNullablePaths<\n GetMyPermissionsResponse,\n `itemRead` | `itemInsert` | `itemUpdate` | `itemRemove`\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n dataCollectionId: dataCollectionId,\n });\n\n const reqOpts = ambassadorWixDataV1DataPermissions.getMyPermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { dataCollectionId: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['dataCollectionId']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n","import { toURLSearchParams } from '@wix/sdk-runtime/rest-modules';\nimport { resolveUrl } from '@wix/sdk-runtime/rest-modules';\nimport { ResolveUrlOpts } from '@wix/sdk-runtime/rest-modules';\nimport { RequestOptionsFactory } from '@wix/sdk-types';\n\nfunction resolveWixCloudPermissionsV1DataPermissionsServiceUrl(\n opts: Omit<ResolveUrlOpts, 'domainToMappings'>\n) {\n const domainToMappings = {\n 'manage._base_domain_': [\n {\n srcPath: '/_api/cloud-data/v1/permissions',\n destPath: '/v1/permissions',\n },\n ],\n 'editor._base_domain_': [\n {\n srcPath: '/_api/cloud-data/v1/permissions',\n destPath: '/v1/permissions',\n },\n ],\n 'blocks._base_domain_': [\n {\n srcPath: '/_api/cloud-data/v1/permissions',\n destPath: '/v1/permissions',\n },\n ],\n 'create.editorx': [\n {\n srcPath: '/_api/cloud-data/v1/permissions',\n destPath: '/v1/permissions',\n },\n ],\n };\n\n return resolveUrl(Object.assign(opts, { domainToMappings }));\n}\n\nconst PACKAGE_NAME = '@wix/auto_sdk_data_permissions';\n\n/** Returns data permissions for a data collection */\nexport function getPermissions(payload: object): RequestOptionsFactory<any> {\n function __getPermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'GET' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.GetPermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n };\n\n return metadata;\n }\n\n return __getPermissions;\n}\n\n/**\n * Updates data permissions for a data collection\n *\n * NOTE that special permissions are not updated using this API, use dedicated methods for it.\n */\nexport function updatePermissions(payload: object): RequestOptionsFactory<any> {\n function __updatePermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'POST' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.UpdatePermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions',\n data: payload,\n host,\n }),\n data: payload,\n };\n\n return metadata;\n }\n\n return __updatePermissions;\n}\n\n/**\n * Adds special data permissions for particular user/group\n * Errors:\n * - `ALREADY_EXISTS` in case if special permission for same subject already exists\n */\nexport function addSpecialPermissions(\n payload: object\n): RequestOptionsFactory<any> {\n function __addSpecialPermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'POST' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.AddSpecialPermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions/special',\n data: payload,\n host,\n }),\n data: payload,\n };\n\n return metadata;\n }\n\n return __addSpecialPermissions;\n}\n\n/**\n * Updates special data permissions for particular user/group.\n * Any omitted permissions will be set to UNSPECIFIED.\n */\nexport function updateSpecialPermissions(\n payload: object\n): RequestOptionsFactory<any> {\n function __updateSpecialPermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'POST' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.UpdateSpecialPermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions/special/{specialPermissions.id}',\n data: payload,\n host,\n }),\n data: payload,\n };\n\n return metadata;\n }\n\n return __updateSpecialPermissions;\n}\n\n/** Deletes special data permissions for particular user/group */\nexport function removeSpecialPermissions(\n payload: object\n): RequestOptionsFactory<any> {\n function __removeSpecialPermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'DELETE' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.RemoveSpecialPermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions/special/{specialPermissionsId}',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n };\n\n return metadata;\n }\n\n return __removeSpecialPermissions;\n}\n\n/** Returns current user permissions for given data collection */\nexport function getMyPermissions(payload: object): RequestOptionsFactory<any> {\n function __getMyPermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'GET' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.GetMyPermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions/current',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n };\n\n return metadata;\n }\n\n return __getMyPermissions;\n}\n","import { HttpClient, NonNullablePaths } from '@wix/sdk-types';\nimport {\n AddSpecialPermissionsOptions,\n AddSpecialPermissionsResponse,\n DataPermissions,\n GetMyPermissionsResponse,\n GetPermissionsResponse,\n UpdatePermissionsResponse,\n UpdateSpecialPermissions,\n UpdateSpecialPermissionsResponse,\n addSpecialPermissions as universalAddSpecialPermissions,\n getMyPermissions as universalGetMyPermissions,\n getPermissions as universalGetPermissions,\n removeSpecialPermissions as universalRemoveSpecialPermissions,\n updatePermissions as universalUpdatePermissions,\n updateSpecialPermissions as universalUpdateSpecialPermissions,\n} from './data-v1-data-permissions-permissions.universal.js';\n\nexport const __metadata = { PACKAGE_NAME: '@wix/data' };\n\nexport function getPermissions(\n httpClient: HttpClient\n): GetPermissionsSignature {\n return (dataCollectionId: string) =>\n universalGetPermissions(\n dataCollectionId,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface GetPermissionsSignature {\n /**\n * Returns data permissions for a data collection\n * @param - Data Collection ID to get permissions for\n */\n (dataCollectionId: string): Promise<GetPermissionsResponse>;\n}\n\nexport function updatePermissions(\n httpClient: HttpClient\n): UpdatePermissionsSignature {\n return (\n dataPermissions: NonNullablePaths<\n DataPermissions,\n `_id` | `itemInsert` | `itemRead` | `itemRemove` | `itemUpdate`\n >\n ) =>\n universalUpdatePermissions(\n dataPermissions,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface UpdatePermissionsSignature {\n /**\n * Updates data permissions for a data collection\n *\n * NOTE that special permissions are not updated using this API, use dedicated methods for it.\n * @param - Data permissions to update\n */\n (dataPermissions: DataPermissions): Promise<UpdatePermissionsResponse>;\n}\n\nexport function addSpecialPermissions(\n httpClient: HttpClient\n): AddSpecialPermissionsSignature {\n return (\n dataCollectionId: string,\n options: NonNullablePaths<\n AddSpecialPermissionsOptions,\n `specialPermissions`\n >\n ) =>\n universalAddSpecialPermissions(\n dataCollectionId,\n options,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface AddSpecialPermissionsSignature {\n /**\n * Adds special data permissions for particular user/group\n * Errors:\n * - `ALREADY_EXISTS` in case if special permission for same subject already exists\n * @param - Data Collection ID to add special permission for\n */\n (\n dataCollectionId: string,\n options: AddSpecialPermissionsOptions\n ): Promise<AddSpecialPermissionsResponse>;\n}\n\nexport function updateSpecialPermissions(\n httpClient: HttpClient\n): UpdateSpecialPermissionsSignature {\n return (_id: string, specialPermissions: UpdateSpecialPermissions) =>\n universalUpdateSpecialPermissions(\n _id,\n specialPermissions,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface UpdateSpecialPermissionsSignature {\n /**\n * Updates special data permissions for particular user/group.\n * Any omitted permissions will be set to UNSPECIFIED.\n * @param - ID of this special access, so it can be managed separately\n */\n (\n _id: string,\n specialPermissions: UpdateSpecialPermissions\n ): Promise<UpdateSpecialPermissionsResponse>;\n}\n\nexport function removeSpecialPermissions(\n httpClient: HttpClient\n): RemoveSpecialPermissionsSignature {\n return (specialPermissionsId: string) =>\n universalRemoveSpecialPermissions(\n specialPermissionsId,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface RemoveSpecialPermissionsSignature {\n /**\n * Deletes special data permissions for particular user/group\n * @param - Special permissions ID to remove\n */\n (specialPermissionsId: string): Promise<void>;\n}\n\nexport function getMyPermissions(\n httpClient: HttpClient\n): GetMyPermissionsSignature {\n return (dataCollectionId: string) =>\n universalGetMyPermissions(\n dataCollectionId,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface GetMyPermissionsSignature {\n /**\n * Returns current user permissions for given data collection\n * @param - Data Collection ID to get permission for\n */\n (dataCollectionId: string): Promise<GetMyPermissionsResponse>;\n}\n\nexport {\n Access,\n AccessLevel,\n ActionEvent,\n AddSpecialPermissionsOptions,\n AddSpecialPermissionsRequest,\n AddSpecialPermissionsResponse,\n Condition,\n ConditionOperator,\n ConditionOperatorOperatorsOneOf,\n ConditionType,\n ConditionTypeOfOneOf,\n ConditionValue,\n ConditionValueValueOneOf,\n DataPermissions,\n DependOnOperator,\n DomainEvent,\n DomainEventBodyOneOf,\n Effect,\n Empty,\n EntityCreatedEvent,\n EntityDeletedEvent,\n EntityUpdatedEvent,\n EnvironmentCondition,\n EnvironmentConditionConditionOneOf,\n EqualOperator,\n ExperimentCondition,\n ExperimentOperator,\n GetMyPermissionsRequest,\n GetMyPermissionsResponse,\n GetPermissionsRequest,\n GetPermissionsResponse,\n JoinedCondition,\n JoinedConditionOperator,\n LikeOperator,\n MigrateCustomRolesRequest,\n MigrateCustomRolesResponse,\n PolicyAssigned,\n PolicyAssignment,\n PolicyAssignmentUpdated,\n PolicyAssignmentsUpdated,\n PolicyAssignmentsUpdatedEventOneOf,\n PolicyAuthorizationDataUpdated,\n PolicyCondition,\n PolicyOwner,\n PolicyOwnerType,\n PolicyStatement,\n PolicyType,\n PolicyUnassigned,\n RemoveSpecialPermissionsRequest,\n RemoveSpecialPermissionsResponse,\n Resource,\n ResourcePath,\n RestoreInfo,\n SimpleCondition,\n SimpleConditionOperator,\n SimpleConditionValue,\n SimpleConditionValueValueOneOf,\n SpecialPermissions,\n SpecialPermissionsSubjectOneOf,\n Subject,\n SubjectContext,\n SubjectContextType,\n SubjectType,\n UpdatePermissionsRequest,\n UpdatePermissionsResponse,\n UpdateSpecialPermissions,\n UpdateSpecialPermissionsRequest,\n UpdateSpecialPermissionsResponse,\n} from './data-v1-data-permissions-permissions.universal.js';\n","import {\n getPermissions as publicGetPermissions,\n updatePermissions as publicUpdatePermissions,\n addSpecialPermissions as publicAddSpecialPermissions,\n updateSpecialPermissions as publicUpdateSpecialPermissions,\n removeSpecialPermissions as publicRemoveSpecialPermissions,\n getMyPermissions as publicGetMyPermissions,\n} from './data-v1-data-permissions-permissions.public.js';\nimport { createRESTModule } from '@wix/sdk-runtime/rest-modules';\nimport { BuildRESTFunction, MaybeContext } from '@wix/sdk-types';\n\nexport const getPermissions: MaybeContext<\n BuildRESTFunction<typeof publicGetPermissions> & typeof publicGetPermissions\n> = /*#__PURE__*/ createRESTModule(publicGetPermissions);\nexport const updatePermissions: MaybeContext<\n BuildRESTFunction<typeof publicUpdatePermissions> &\n typeof publicUpdatePermissions\n> = /*#__PURE__*/ createRESTModule(publicUpdatePermissions);\nexport const addSpecialPermissions: MaybeContext<\n BuildRESTFunction<typeof publicAddSpecialPermissions> &\n typeof publicAddSpecialPermissions\n> = /*#__PURE__*/ createRESTModule(publicAddSpecialPermissions);\nexport const updateSpecialPermissions: MaybeContext<\n BuildRESTFunction<typeof publicUpdateSpecialPermissions> &\n typeof publicUpdateSpecialPermissions\n> = /*#__PURE__*/ createRESTModule(publicUpdateSpecialPermissions);\nexport const removeSpecialPermissions: MaybeContext<\n BuildRESTFunction<typeof publicRemoveSpecialPermissions> &\n typeof publicRemoveSpecialPermissions\n> = /*#__PURE__*/ createRESTModule(publicRemoveSpecialPermissions);\nexport const getMyPermissions: MaybeContext<\n BuildRESTFunction<typeof publicGetMyPermissions> &\n typeof publicGetMyPermissions\n> = /*#__PURE__*/ createRESTModule(publicGetMyPermissions);\n\nexport {\n AccessLevel,\n Access,\n SubjectType,\n SubjectContextType,\n SimpleConditionOperator,\n JoinedConditionOperator,\n Effect,\n PolicyType,\n PolicyOwnerType,\n} from './data-v1-data-permissions-permissions.universal.js';\nexport {\n DataPermissions,\n SpecialPermissions,\n SpecialPermissionsSubjectOneOf,\n GetPermissionsRequest,\n GetPermissionsResponse,\n UpdatePermissionsRequest,\n UpdatePermissionsResponse,\n AddSpecialPermissionsRequest,\n AddSpecialPermissionsResponse,\n UpdateSpecialPermissionsRequest,\n UpdateSpecialPermissionsResponse,\n RemoveSpecialPermissionsRequest,\n RemoveSpecialPermissionsResponse,\n GetMyPermissionsRequest,\n GetMyPermissionsResponse,\n MigrateCustomRolesRequest,\n MigrateCustomRolesResponse,\n PolicyAssignmentsUpdated,\n PolicyAssignmentsUpdatedEventOneOf,\n PolicyAssigned,\n Subject,\n SubjectContext,\n PolicyAssignment,\n ResourcePath,\n Resource,\n PolicyCondition,\n ConditionType,\n ConditionTypeOfOneOf,\n SimpleCondition,\n SimpleConditionValue,\n SimpleConditionValueValueOneOf,\n JoinedCondition,\n EnvironmentCondition,\n EnvironmentConditionConditionOneOf,\n ExperimentCondition,\n Condition,\n ConditionOperator,\n ConditionOperatorOperatorsOneOf,\n EqualOperator,\n ConditionValue,\n ConditionValueValueOneOf,\n LikeOperator,\n ExperimentOperator,\n DependOnOperator,\n PolicyUnassigned,\n PolicyAssignmentUpdated,\n Empty,\n PolicyAuthorizationDataUpdated,\n PolicyStatement,\n PolicyOwner,\n DomainEvent,\n DomainEventBodyOneOf,\n EntityCreatedEvent,\n RestoreInfo,\n EntityUpdatedEvent,\n EntityDeletedEvent,\n ActionEvent,\n AddSpecialPermissionsOptions,\n UpdateSpecialPermissions,\n} from './data-v1-data-permissions-permissions.universal.js';\n"],"mappings":"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","names":["addSpecialPermissions","getMyPermissions","getPermissions","removeSpecialPermissions","updatePermissions","updateSpecialPermissions","import_rest_modules","AccessLevel","Access","SubjectType","SubjectContextType","SimpleConditionOperator","JoinedConditionOperator","Effect","PolicyType","PolicyOwnerType","getPermissions","sdkTransformError","updatePermissions","addSpecialPermissions","updateSpecialPermissions","removeSpecialPermissions","getMyPermissions","getPermissions","updatePermissions","addSpecialPermissions","updateSpecialPermissions","removeSpecialPermissions","getMyPermissions","import_rest_modules","getPermissions","updatePermissions","addSpecialPermissions","updateSpecialPermissions","removeSpecialPermissions","getMyPermissions"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/data-v1-data-permissions-permissions.universal.ts","../../../src/data-v1-data-permissions-permissions.http.ts","../../../src/data-v1-data-permissions-permissions.public.ts","../../../src/data-v1-data-permissions-permissions.context.ts"],"sourcesContent":["import { transformError as sdkTransformError } from '@wix/sdk-runtime/transform-error';\nimport {\n renameKeysFromSDKRequestToRESTRequest,\n renameKeysFromRESTResponseToSDKResponse,\n} from '@wix/sdk-runtime/rename-all-nested-keys';\nimport { HttpClient, NonNullablePaths } from '@wix/sdk-types';\nimport * as ambassadorWixDataV1DataPermissions from './data-v1-data-permissions-permissions.http.js';\n\n/**\n * Permissions configuration of a data collection.\n *\n * Describes who can perform certain data operations on a collection.\n */\nexport interface DataPermissions {\n /**\n * Data Collection ID that is subject of these permissions\n * @immutable\n * @maxLength 255\n */\n _id?: string;\n /** Access level for data items read */\n itemRead?: AccessLevelWithLiterals;\n /** Access level for data items insert */\n itemInsert?: AccessLevelWithLiterals;\n /** Access level for data items update */\n itemUpdate?: AccessLevelWithLiterals;\n /** Access level for data items removal */\n itemRemove?: AccessLevelWithLiterals;\n}\n\n/**\n * Describes who can perform certain action.\n * Each level includes all levels below it (except UNDEFINED).\n */\nexport enum AccessLevel {\n /** Not set */\n UNKNOWN = 'UNKNOWN',\n /** Any subject, including visitors */\n ANYONE = 'ANYONE',\n /** Any signed-in user (both site members and collaborators) */\n SITE_MEMBER = 'SITE_MEMBER',\n /** Any signed-in user, but site members only have access to own items */\n SITE_MEMBER_AUTHOR = 'SITE_MEMBER_AUTHOR',\n /** Site collaborator that has a role with CMS Access permission */\n CMS_EDITOR = 'CMS_EDITOR',\n /** CMS administrators and users or roles granted with special access */\n PRIVILEGED = 'PRIVILEGED',\n}\n\n/** @enumType */\nexport type AccessLevelWithLiterals =\n | AccessLevel\n | 'UNKNOWN'\n | 'ANYONE'\n | 'SITE_MEMBER'\n | 'SITE_MEMBER_AUTHOR'\n | 'CMS_EDITOR'\n | 'PRIVILEGED';\n\n/** Special access granted to user or role */\nexport interface SpecialPermissions extends SpecialPermissionsSubjectOneOf {\n /**\n * User ID that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n userId?: string;\n /**\n * Policy ID of (custom) role that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n policyId?: string;\n /**\n * ID of this special access, so it can be managed separately\n * @format GUID\n * @readonly\n */\n _id?: string;\n /** If data item read is allowed */\n itemRead?: AccessWithLiterals;\n /** If data item insert is allowed */\n itemInsert?: AccessWithLiterals;\n /** If data item update is allowed */\n itemUpdate?: AccessWithLiterals;\n /** If data item remove is allowed */\n itemRemove?: AccessWithLiterals;\n}\n\n/** @oneof */\nexport interface SpecialPermissionsSubjectOneOf {\n /**\n * User ID that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n userId?: string;\n /**\n * Policy ID of (custom) role that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n policyId?: string;\n}\n\nexport enum Access {\n /** Action is not specifically allowed, but can be allowed by top-level permissions */\n UNSPECIFIED = 'UNSPECIFIED',\n /** Action is specifically allowed */\n ALLOWED = 'ALLOWED',\n}\n\n/** @enumType */\nexport type AccessWithLiterals = Access | 'UNSPECIFIED' | 'ALLOWED';\n\nexport interface GetPermissionsRequest {\n /**\n * Data Collection ID to get permissions for\n * @maxLength 256\n */\n dataCollectionId: string;\n}\n\nexport interface GetPermissionsResponse {\n /** Requested data permissions */\n dataPermissions?: DataPermissions;\n}\n\nexport interface UpdatePermissionsRequest {\n /** Data permissions to update */\n dataPermissions: DataPermissions;\n}\n\nexport interface UpdatePermissionsResponse {\n /** Updated data permissions */\n dataPermissions?: DataPermissions;\n}\n\nexport interface AddSpecialPermissionsRequest {\n /**\n * Data Collection ID to add special permission for\n * @maxLength 256\n */\n dataCollectionId: string;\n /** Special permissions to add */\n specialPermissions: SpecialPermissions;\n}\n\nexport interface AddSpecialPermissionsResponse {\n /** Added special data permissions */\n specialPermissions?: SpecialPermissions;\n}\n\nexport interface UpdateSpecialPermissionsRequest {\n /** Special permissions to update */\n specialPermissions: SpecialPermissions;\n}\n\nexport interface UpdateSpecialPermissionsResponse {\n /** Updated special data permissions */\n specialPermissions?: SpecialPermissions;\n}\n\nexport interface RemoveSpecialPermissionsRequest {\n /**\n * Special permissions ID to remove\n * @format GUID\n */\n specialPermissionsId: string;\n}\n\nexport interface RemoveSpecialPermissionsResponse {}\n\nexport interface GetMyPermissionsRequest {\n /**\n * Data Collection ID to get permission for\n * @maxLength 256\n */\n dataCollectionId: string;\n}\n\nexport interface GetMyPermissionsResponse {\n /** If data item read is allowed */\n itemRead?: boolean;\n /** If data item insert is allowed */\n itemInsert?: boolean;\n /** If data item update is allowed */\n itemUpdate?: boolean;\n /** If data item remove is allowed */\n itemRemove?: boolean;\n}\n\nexport interface MigrateCustomRolesRequest {\n /**\n * Role ID to update, if empty updates all roles in scope\n * @format GUID\n */\n policyId?: string | null;\n}\n\nexport interface MigrateCustomRolesResponse {}\n\nexport interface PolicyAssignmentsUpdated\n extends PolicyAssignmentsUpdatedEventOneOf {\n policyAssigned?: PolicyAssigned;\n policyUnassigned?: PolicyUnassigned;\n policyAssignmentUpdated?: PolicyAssignmentUpdated;\n}\n\n/** @oneof */\nexport interface PolicyAssignmentsUpdatedEventOneOf {\n policyAssigned?: PolicyAssigned;\n policyUnassigned?: PolicyUnassigned;\n policyAssignmentUpdated?: PolicyAssignmentUpdated;\n}\n\nexport interface PolicyAssigned {\n subject?: Subject;\n assignment?: PolicyAssignment[];\n}\n\nexport interface Subject {\n /** ID of identity assigned to the asset. */\n _id?: string;\n /** Type of identity assigned to the asset. Supported subject types include user IDs, account IDs, and app IDs. */\n subjectType?: SubjectTypeWithLiterals;\n /** Context of identity assigned to the asset. For example, a `subjectType` = `USER` will have `context` = `ACCOUNT`. */\n context?: SubjectContext;\n}\n\nexport enum SubjectType {\n UNKNOWN = 'UNKNOWN',\n ACCOUNT = 'ACCOUNT',\n USER = 'USER',\n USER_GROUP = 'USER_GROUP',\n MEMBER_GROUP = 'MEMBER_GROUP',\n VISITOR_GROUP = 'VISITOR_GROUP',\n EXTERNAL_APP = 'EXTERNAL_APP',\n ACCOUNT_GROUP = 'ACCOUNT_GROUP',\n WIX_APP = 'WIX_APP',\n}\n\n/** @enumType */\nexport type SubjectTypeWithLiterals =\n | SubjectType\n | 'UNKNOWN'\n | 'ACCOUNT'\n | 'USER'\n | 'USER_GROUP'\n | 'MEMBER_GROUP'\n | 'VISITOR_GROUP'\n | 'EXTERNAL_APP'\n | 'ACCOUNT_GROUP'\n | 'WIX_APP';\n\nexport interface SubjectContext {\n _id?: string;\n contextType?: SubjectContextTypeWithLiterals;\n}\n\nexport enum SubjectContextType {\n UNKNOWN_CTX = 'UNKNOWN_CTX',\n ORG_CTX = 'ORG_CTX',\n ACCOUNT_CTX = 'ACCOUNT_CTX',\n}\n\n/** @enumType */\nexport type SubjectContextTypeWithLiterals =\n | SubjectContextType\n | 'UNKNOWN_CTX'\n | 'ORG_CTX'\n | 'ACCOUNT_CTX';\n\nexport interface PolicyAssignment {\n policyId?: string;\n resource?: ResourcePath;\n condition?: PolicyCondition;\n assignmentId?: string | null;\n}\n\nexport interface ResourcePath {\n organization?: string | null;\n account?: string | null;\n site?: string | null;\n resource?: Resource;\n}\n\n/**\n * A custom resource. Is used to represent some asset that is not a direct resource context (site or account), but something custom.\n * For example: payment method, blog post, domain, logo.\n */\nexport interface Resource {\n /** The resource id. */\n _id?: string | null;\n /** The resource type */\n type?: string | null;\n}\n\nexport interface PolicyCondition {\n /** The type of the condition */\n condition?: ConditionType;\n}\n\nexport interface ConditionType extends ConditionTypeOfOneOf {\n /** @deprecated */\n simpleCondition?: SimpleCondition;\n /** A logic combination between several conditions, with an operator between them */\n joinedConditions?: JoinedCondition;\n /** @deprecated */\n environmentCondition?: EnvironmentCondition;\n /** A single condition */\n condition?: Condition;\n}\n\n/** @oneof */\nexport interface ConditionTypeOfOneOf {\n /** @deprecated */\n simpleCondition?: SimpleCondition;\n /** A logic combination between several conditions, with an operator between them */\n joinedConditions?: JoinedCondition;\n /** @deprecated */\n environmentCondition?: EnvironmentCondition;\n /** A single condition */\n condition?: Condition;\n}\n\nexport interface SimpleCondition {\n attrName?: string;\n value?: SimpleConditionValue;\n op?: SimpleConditionOperatorWithLiterals;\n conditionModelId?: string;\n}\n\nexport interface SimpleConditionValue extends SimpleConditionValueValueOneOf {\n attrName?: string;\n stringValue?: string;\n boolValue?: boolean;\n}\n\n/** @oneof */\nexport interface SimpleConditionValueValueOneOf {\n attrName?: string;\n stringValue?: string;\n boolValue?: boolean;\n}\n\nexport enum SimpleConditionOperator {\n UNKNOWN_SIMPLE_OP = 'UNKNOWN_SIMPLE_OP',\n EQUAL = 'EQUAL',\n}\n\n/** @enumType */\nexport type SimpleConditionOperatorWithLiterals =\n | SimpleConditionOperator\n | 'UNKNOWN_SIMPLE_OP'\n | 'EQUAL';\n\nexport interface JoinedCondition {\n /** The operator that should be used when evaluating the condition */\n op?: JoinedConditionOperatorWithLiterals;\n /** The conditions that should be evaluated, and then joined using the operator provided */\n conditions?: ConditionType[];\n}\n\nexport enum JoinedConditionOperator {\n UNKNOWN_JOIN_OP = 'UNKNOWN_JOIN_OP',\n OR = 'OR',\n AND = 'AND',\n}\n\n/** @enumType */\nexport type JoinedConditionOperatorWithLiterals =\n | JoinedConditionOperator\n | 'UNKNOWN_JOIN_OP'\n | 'OR'\n | 'AND';\n\nexport interface EnvironmentCondition\n extends EnvironmentConditionConditionOneOf {\n experimentCondition?: ExperimentCondition;\n}\n\n/** @oneof */\nexport interface EnvironmentConditionConditionOneOf {\n experimentCondition?: ExperimentCondition;\n}\n\nexport interface ExperimentCondition {\n spec?: string;\n fallbackValue?: string;\n expectedValue?: string;\n}\n\nexport interface Condition {\n /** The unique identifier of the condition model. Indicates which actions the condition is working on */\n conditionModelId?: string;\n /** The operator that should be evaluated */\n operator?: ConditionOperator;\n}\n\nexport interface ConditionOperator extends ConditionOperatorOperatorsOneOf {\n /** Comparison of equality - will be evaluated to true if the given parties are equal */\n equals?: EqualOperator;\n /** Regex operator - will be evaluated to true if the given value matches the provided regex */\n like?: LikeOperator;\n /** Petri experiment - will be evaluated using petri. */\n experiment?: ExperimentOperator;\n /** Operator that indicates a dependency on another subject being allowed to perform something. */\n dependOn?: DependOnOperator;\n}\n\n/** @oneof */\nexport interface ConditionOperatorOperatorsOneOf {\n /** Comparison of equality - will be evaluated to true if the given parties are equal */\n equals?: EqualOperator;\n /** Regex operator - will be evaluated to true if the given value matches the provided regex */\n like?: LikeOperator;\n /** Petri experiment - will be evaluated using petri. */\n experiment?: ExperimentOperator;\n /** Operator that indicates a dependency on another subject being allowed to perform something. */\n dependOn?: DependOnOperator;\n}\n\nexport interface EqualOperator {\n /** The attribute which should be compared. The attribute will be first evaluated to a value, and then compared the other side (attribute/value) */\n attrName?: string;\n /** The value to compare to. If the two parties are equal - we will return true. */\n value?: ConditionValue;\n}\n\nexport interface ConditionValue extends ConditionValueValueOneOf {\n /** an attribute. We'll first retrieve the value of the attribute (from the request or from pre-indexed values), and then compare to what it needs to be compared with. */\n attrName?: string;\n /** a value with a string type. Will be compared to the attribute provided, and be true only if they match the operator. */\n stringValue?: string;\n /** a value with a boolean type. Will be compared to the attribute provided, and be true only if they match the operator. */\n boolValue?: boolean;\n}\n\n/** @oneof */\nexport interface ConditionValueValueOneOf {\n /** an attribute. We'll first retrieve the value of the attribute (from the request or from pre-indexed values), and then compare to what it needs to be compared with. */\n attrName?: string;\n /** a value with a string type. Will be compared to the attribute provided, and be true only if they match the operator. */\n stringValue?: string;\n /** a value with a boolean type. Will be compared to the attribute provided, and be true only if they match the operator. */\n boolValue?: boolean;\n}\n\nexport interface LikeOperator {\n /** The attribute which should be compared. The attribute will be first evaluated to a value, and then compared the regex values provided. */\n attrName?: string;\n /** The regex values which the attribute value should be evaluated on. If the attribute value matches at least one of the regular expressions provided - we will return true */\n values?: string[];\n}\n\nexport interface ExperimentOperator {\n /** The spec to conduct the experiment on. */\n spec?: string;\n /** The value to use if the experiment could not be conducted */\n fallbackValue?: string;\n /** The expected value of the experiment conduction. If it matches the actual value - true will be returned. Otherwise - false. */\n expectedValue?: string;\n}\n\n/** Implies that the policy takes affect only if the depend on subject is permitted as well. */\nexport interface DependOnOperator {\n /** The subject on which the current entry depends on. If the subject is allowed to perform what the query was about - the condition will be evaluated to true. Otherwise - false */\n dependOnSubject?: Subject;\n}\n\nexport interface PolicyUnassigned {\n subject?: Subject;\n assignment?: PolicyAssignment[];\n}\n\nexport interface PolicyAssignmentUpdated {\n subject?: Subject;\n fromAssignment?: PolicyAssignment[];\n toAssignment?: PolicyAssignment[];\n}\n\nexport interface Empty {}\n\nexport interface PolicyAuthorizationDataUpdated {\n policyId?: string;\n fromPolicyStatements?: PolicyStatement[];\n toPolicyStatements?: PolicyStatement[];\n policyType?: PolicyTypeWithLiterals;\n policyOwner?: PolicyOwner;\n}\n\nexport interface PolicyStatement {\n /** @readonly */\n _id?: string | null;\n permissions?: string[];\n scopes?: string[];\n effect?: EffectWithLiterals;\n condition?: PolicyCondition;\n}\n\nexport enum Effect {\n UNKNOWN_EFFECT = 'UNKNOWN_EFFECT',\n ALLOW = 'ALLOW',\n DENY = 'DENY',\n}\n\n/** @enumType */\nexport type EffectWithLiterals = Effect | 'UNKNOWN_EFFECT' | 'ALLOW' | 'DENY';\n\nexport enum PolicyType {\n UNKNOWN_STATUS = 'UNKNOWN_STATUS',\n PREDEFINED = 'PREDEFINED',\n CUSTOM = 'CUSTOM',\n INLINE_CUSTOM = 'INLINE_CUSTOM',\n}\n\n/** @enumType */\nexport type PolicyTypeWithLiterals =\n | PolicyType\n | 'UNKNOWN_STATUS'\n | 'PREDEFINED'\n | 'CUSTOM'\n | 'INLINE_CUSTOM';\n\nexport interface PolicyOwner {\n type?: PolicyOwnerTypeWithLiterals;\n _id?: string;\n}\n\nexport enum PolicyOwnerType {\n UNKNOWN_TYPE = 'UNKNOWN_TYPE',\n WIX = 'WIX',\n WIX_ACCOUNT = 'WIX_ACCOUNT',\n}\n\n/** @enumType */\nexport type PolicyOwnerTypeWithLiterals =\n | PolicyOwnerType\n | 'UNKNOWN_TYPE'\n | 'WIX'\n | 'WIX_ACCOUNT';\n\nexport interface DomainEvent extends DomainEventBodyOneOf {\n createdEvent?: EntityCreatedEvent;\n updatedEvent?: EntityUpdatedEvent;\n deletedEvent?: EntityDeletedEvent;\n actionEvent?: ActionEvent;\n /** Event ID. With this ID you can easily spot duplicated events and ignore them. */\n _id?: string;\n /**\n * Fully Qualified Domain Name of an entity. This is a unique identifier assigned to the API main business entities.\n * For example, `wix.stores.catalog.product`, `wix.bookings.session`, `wix.payments.transaction`.\n */\n entityFqdn?: string;\n /**\n * Event action name, placed at the top level to make it easier for users to dispatch messages.\n * For example: `created`/`updated`/`deleted`/`started`/`completed`/`email_opened`.\n */\n slug?: string;\n /** ID of the entity associated with the event. */\n entityId?: string;\n /** Event timestamp in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format and UTC time. For example, `2020-04-26T13:57:50.699Z`. */\n eventTime?: Date | null;\n /**\n * Whether the event was triggered as a result of a privacy regulation application\n * (for example, GDPR).\n */\n triggeredByAnonymizeRequest?: boolean | null;\n /** If present, indicates the action that triggered the event. */\n originatedFrom?: string | null;\n /**\n * A sequence number that indicates the order of updates to an entity. For example, if an entity was updated at 16:00 and then again at 16:01, the second update will always have a higher sequence number.\n * You can use this number to make sure you're handling updates in the right order. Just save the latest sequence number on your end and compare it to the one in each new message. If the new message has an older (lower) number, you can safely ignore it.\n */\n entityEventSequence?: string | null;\n}\n\n/** @oneof */\nexport interface DomainEventBodyOneOf {\n createdEvent?: EntityCreatedEvent;\n updatedEvent?: EntityUpdatedEvent;\n deletedEvent?: EntityDeletedEvent;\n actionEvent?: ActionEvent;\n}\n\nexport interface EntityCreatedEvent {\n entity?: string;\n}\n\nexport interface RestoreInfo {\n deletedDate?: Date | null;\n}\n\nexport interface EntityUpdatedEvent {\n /**\n * Since platformized APIs only expose PATCH and not PUT we can't assume that the fields sent from the client are the actual diff.\n * This means that to generate a list of changed fields (as opposed to sent fields) one needs to traverse both objects.\n * We don't want to impose this on all developers and so we leave this traversal to the notification recipients which need it.\n */\n currentEntity?: string;\n}\n\nexport interface EntityDeletedEvent {\n /** Entity that was deleted. */\n deletedEntity?: string | null;\n}\n\nexport interface ActionEvent {\n body?: string;\n}\n\ntype DataPermissionsNonNullablePaths =\n | `_id`\n | `itemRead`\n | `itemInsert`\n | `itemUpdate`\n | `itemRemove`;\n\n/**\n * Returns data permissions for a data collection\n * @param dataCollectionId - Data Collection ID to get permissions for\n * @public\n * @documentationMaturity preview\n * @requiredField dataCollectionId\n * @permissionId WIX_DATA.PERMISSIONS_READ\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.GetPermissions\n */\nexport async function getPermissions(\n dataCollectionId: string\n): Promise<\n NonNullablePaths<\n GetPermissionsResponse,\n {\n [P in DataPermissionsNonNullablePaths]: `dataPermissions.${P}`;\n }[DataPermissionsNonNullablePaths]\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n dataCollectionId: dataCollectionId,\n });\n\n const reqOpts = ambassadorWixDataV1DataPermissions.getPermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { dataCollectionId: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['dataCollectionId']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Updates data permissions for a data collection\n *\n * NOTE that special permissions are not updated using this API, use dedicated methods for it.\n * @param dataPermissions - Data permissions to update\n * @public\n * @documentationMaturity preview\n * @requiredField dataPermissions\n * @requiredField dataPermissions._id\n * @requiredField dataPermissions.itemInsert\n * @requiredField dataPermissions.itemRead\n * @requiredField dataPermissions.itemRemove\n * @requiredField dataPermissions.itemUpdate\n * @permissionId WIX_DATA.PERMISSIONS_UPDATE\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.UpdatePermissions\n */\nexport async function updatePermissions(\n dataPermissions: NonNullablePaths<\n DataPermissions,\n `_id` | `itemInsert` | `itemRead` | `itemRemove` | `itemUpdate`\n >\n): Promise<\n NonNullablePaths<\n UpdatePermissionsResponse,\n {\n [P in DataPermissionsNonNullablePaths]: `dataPermissions.${P}`;\n }[DataPermissionsNonNullablePaths]\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n dataPermissions: dataPermissions,\n });\n\n const reqOpts = ambassadorWixDataV1DataPermissions.updatePermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { dataPermissions: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['dataPermissions']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Adds special data permissions for particular user/group\n * Errors:\n * - `ALREADY_EXISTS` in case if special permission for same subject already exists\n * @param dataCollectionId - Data Collection ID to add special permission for\n * @public\n * @documentationMaturity preview\n * @requiredField dataCollectionId\n * @requiredField options\n * @requiredField options.specialPermissions\n * @requiredField options.specialPermissions.subject\n * @permissionId WIX_DATA.PERMISSIONS_UPDATE_SPECIAL\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.AddSpecialPermissions\n */\nexport async function addSpecialPermissions(\n dataCollectionId: string,\n options: NonNullablePaths<AddSpecialPermissionsOptions, `specialPermissions`>\n): Promise<\n NonNullablePaths<\n AddSpecialPermissionsResponse,\n | `specialPermissions.userId`\n | `specialPermissions.policyId`\n | `specialPermissions._id`\n | `specialPermissions.itemRead`\n | `specialPermissions.itemInsert`\n | `specialPermissions.itemUpdate`\n | `specialPermissions.itemRemove`\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[2] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n dataCollectionId: dataCollectionId,\n specialPermissions: options?.specialPermissions,\n });\n\n const reqOpts =\n ambassadorWixDataV1DataPermissions.addSpecialPermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: {\n dataCollectionId: '$[0]',\n specialPermissions: '$[1].specialPermissions',\n },\n singleArgumentUnchanged: false,\n },\n ['dataCollectionId', 'options']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\nexport interface AddSpecialPermissionsOptions {\n /** Special permissions to add */\n specialPermissions: SpecialPermissions;\n}\n\n/**\n * Updates special data permissions for particular user/group.\n * Any omitted permissions will be set to UNSPECIFIED.\n * @param _id - ID of this special access, so it can be managed separately\n * @public\n * @documentationMaturity preview\n * @requiredField _id\n * @requiredField specialPermissions\n * @permissionId WIX_DATA.PERMISSIONS_UPDATE_SPECIAL\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.UpdateSpecialPermissions\n */\nexport async function updateSpecialPermissions(\n _id: string,\n specialPermissions: UpdateSpecialPermissions\n): Promise<\n NonNullablePaths<\n UpdateSpecialPermissionsResponse,\n | `specialPermissions.userId`\n | `specialPermissions.policyId`\n | `specialPermissions._id`\n | `specialPermissions.itemRead`\n | `specialPermissions.itemInsert`\n | `specialPermissions.itemUpdate`\n | `specialPermissions.itemRemove`\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[2] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n specialPermissions: { ...specialPermissions, id: _id },\n });\n\n const reqOpts =\n ambassadorWixDataV1DataPermissions.updateSpecialPermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: { specialPermissions: '$[1]' },\n explicitPathsToArguments: { 'specialPermissions.id': '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['_id', 'specialPermissions']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\nexport interface UpdateSpecialPermissions {\n /**\n * User ID that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n userId?: string;\n /**\n * Policy ID of (custom) role that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n policyId?: string;\n /**\n * ID of this special access, so it can be managed separately\n * @format GUID\n * @readonly\n */\n _id?: string;\n /** If data item read is allowed */\n itemRead?: AccessWithLiterals;\n /** If data item insert is allowed */\n itemInsert?: AccessWithLiterals;\n /** If data item update is allowed */\n itemUpdate?: AccessWithLiterals;\n /** If data item remove is allowed */\n itemRemove?: AccessWithLiterals;\n}\n\n/**\n * Deletes special data permissions for particular user/group\n * @param specialPermissionsId - Special permissions ID to remove\n * @public\n * @documentationMaturity preview\n * @requiredField specialPermissionsId\n * @permissionId WIX_DATA.PERMISSIONS_UPDATE_SPECIAL\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.RemoveSpecialPermissions\n */\nexport async function removeSpecialPermissions(\n specialPermissionsId: string\n): Promise<void> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n specialPermissionsId: specialPermissionsId,\n });\n\n const reqOpts =\n ambassadorWixDataV1DataPermissions.removeSpecialPermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { specialPermissionsId: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['specialPermissionsId']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Returns current user permissions for given data collection\n * @param dataCollectionId - Data Collection ID to get permission for\n * @public\n * @documentationMaturity preview\n * @requiredField dataCollectionId\n * @permissionId WIX_DATA.PERMISSIONS_GET_ALLOWED\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.GetMyPermissions\n */\nexport async function getMyPermissions(\n dataCollectionId: string\n): Promise<\n NonNullablePaths<\n GetMyPermissionsResponse,\n `itemRead` | `itemInsert` | `itemUpdate` | `itemRemove`\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n dataCollectionId: dataCollectionId,\n });\n\n const reqOpts = ambassadorWixDataV1DataPermissions.getMyPermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { dataCollectionId: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['dataCollectionId']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n","import { toURLSearchParams } from '@wix/sdk-runtime/rest-modules';\nimport { resolveUrl } from '@wix/sdk-runtime/rest-modules';\nimport { ResolveUrlOpts } from '@wix/sdk-runtime/rest-modules';\nimport { RequestOptionsFactory } from '@wix/sdk-types';\n\nfunction resolveWixCloudPermissionsV1DataPermissionsServiceUrl(\n opts: Omit<ResolveUrlOpts, 'domainToMappings'>\n) {\n const domainToMappings = {\n 'manage._base_domain_': [\n {\n srcPath: '/_api/cloud-data/v1/permissions',\n destPath: '/v1/permissions',\n },\n ],\n 'editor._base_domain_': [\n {\n srcPath: '/_api/cloud-data/v1/permissions',\n destPath: '/v1/permissions',\n },\n ],\n 'blocks._base_domain_': [\n {\n srcPath: '/_api/cloud-data/v1/permissions',\n destPath: '/v1/permissions',\n },\n ],\n 'create.editorx': [\n {\n srcPath: '/_api/cloud-data/v1/permissions',\n destPath: '/v1/permissions',\n },\n ],\n };\n\n return resolveUrl(Object.assign(opts, { domainToMappings }));\n}\n\nconst PACKAGE_NAME = '@wix/auto_sdk_data_permissions';\n\n/** Returns data permissions for a data collection */\nexport function getPermissions(payload: object): RequestOptionsFactory<any> {\n function __getPermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'GET' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.GetPermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n };\n\n return metadata;\n }\n\n return __getPermissions;\n}\n\n/**\n * Updates data permissions for a data collection\n *\n * NOTE that special permissions are not updated using this API, use dedicated methods for it.\n */\nexport function updatePermissions(payload: object): RequestOptionsFactory<any> {\n function __updatePermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'POST' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.UpdatePermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions',\n data: payload,\n host,\n }),\n data: payload,\n };\n\n return metadata;\n }\n\n return __updatePermissions;\n}\n\n/**\n * Adds special data permissions for particular user/group\n * Errors:\n * - `ALREADY_EXISTS` in case if special permission for same subject already exists\n */\nexport function addSpecialPermissions(\n payload: object\n): RequestOptionsFactory<any> {\n function __addSpecialPermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'POST' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.AddSpecialPermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions/special',\n data: payload,\n host,\n }),\n data: payload,\n };\n\n return metadata;\n }\n\n return __addSpecialPermissions;\n}\n\n/**\n * Updates special data permissions for particular user/group.\n * Any omitted permissions will be set to UNSPECIFIED.\n */\nexport function updateSpecialPermissions(\n payload: object\n): RequestOptionsFactory<any> {\n function __updateSpecialPermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'POST' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.UpdateSpecialPermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions/special/{specialPermissions.id}',\n data: payload,\n host,\n }),\n data: payload,\n };\n\n return metadata;\n }\n\n return __updateSpecialPermissions;\n}\n\n/** Deletes special data permissions for particular user/group */\nexport function removeSpecialPermissions(\n payload: object\n): RequestOptionsFactory<any> {\n function __removeSpecialPermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'DELETE' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.RemoveSpecialPermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions/special/{specialPermissionsId}',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n };\n\n return metadata;\n }\n\n return __removeSpecialPermissions;\n}\n\n/** Returns current user permissions for given data collection */\nexport function getMyPermissions(payload: object): RequestOptionsFactory<any> {\n function __getMyPermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'GET' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.GetMyPermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions/current',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n };\n\n return metadata;\n }\n\n return __getMyPermissions;\n}\n","import { HttpClient, NonNullablePaths } from '@wix/sdk-types';\nimport {\n AddSpecialPermissionsOptions,\n AddSpecialPermissionsResponse,\n DataPermissions,\n GetMyPermissionsResponse,\n GetPermissionsResponse,\n UpdatePermissionsResponse,\n UpdateSpecialPermissions,\n UpdateSpecialPermissionsResponse,\n addSpecialPermissions as universalAddSpecialPermissions,\n getMyPermissions as universalGetMyPermissions,\n getPermissions as universalGetPermissions,\n removeSpecialPermissions as universalRemoveSpecialPermissions,\n updatePermissions as universalUpdatePermissions,\n updateSpecialPermissions as universalUpdateSpecialPermissions,\n} from './data-v1-data-permissions-permissions.universal.js';\n\nexport const __metadata = { PACKAGE_NAME: '@wix/data' };\n\nexport function getPermissions(\n httpClient: HttpClient\n): GetPermissionsSignature {\n return (dataCollectionId: string) =>\n universalGetPermissions(\n dataCollectionId,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface GetPermissionsSignature {\n /**\n * Returns data permissions for a data collection\n * @param - Data Collection ID to get permissions for\n */\n (dataCollectionId: string): Promise<GetPermissionsResponse>;\n}\n\nexport function updatePermissions(\n httpClient: HttpClient\n): UpdatePermissionsSignature {\n return (\n dataPermissions: NonNullablePaths<\n DataPermissions,\n `_id` | `itemInsert` | `itemRead` | `itemRemove` | `itemUpdate`\n >\n ) =>\n universalUpdatePermissions(\n dataPermissions,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface UpdatePermissionsSignature {\n /**\n * Updates data permissions for a data collection\n *\n * NOTE that special permissions are not updated using this API, use dedicated methods for it.\n * @param - Data permissions to update\n */\n (dataPermissions: DataPermissions): Promise<UpdatePermissionsResponse>;\n}\n\nexport function addSpecialPermissions(\n httpClient: HttpClient\n): AddSpecialPermissionsSignature {\n return (\n dataCollectionId: string,\n options: NonNullablePaths<\n AddSpecialPermissionsOptions,\n `specialPermissions`\n >\n ) =>\n universalAddSpecialPermissions(\n dataCollectionId,\n options,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface AddSpecialPermissionsSignature {\n /**\n * Adds special data permissions for particular user/group\n * Errors:\n * - `ALREADY_EXISTS` in case if special permission for same subject already exists\n * @param - Data Collection ID to add special permission for\n */\n (\n dataCollectionId: string,\n options: AddSpecialPermissionsOptions\n ): Promise<AddSpecialPermissionsResponse>;\n}\n\nexport function updateSpecialPermissions(\n httpClient: HttpClient\n): UpdateSpecialPermissionsSignature {\n return (_id: string, specialPermissions: UpdateSpecialPermissions) =>\n universalUpdateSpecialPermissions(\n _id,\n specialPermissions,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface UpdateSpecialPermissionsSignature {\n /**\n * Updates special data permissions for particular user/group.\n * Any omitted permissions will be set to UNSPECIFIED.\n * @param - ID of this special access, so it can be managed separately\n */\n (\n _id: string,\n specialPermissions: UpdateSpecialPermissions\n ): Promise<UpdateSpecialPermissionsResponse>;\n}\n\nexport function removeSpecialPermissions(\n httpClient: HttpClient\n): RemoveSpecialPermissionsSignature {\n return (specialPermissionsId: string) =>\n universalRemoveSpecialPermissions(\n specialPermissionsId,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface RemoveSpecialPermissionsSignature {\n /**\n * Deletes special data permissions for particular user/group\n * @param - Special permissions ID to remove\n */\n (specialPermissionsId: string): Promise<void>;\n}\n\nexport function getMyPermissions(\n httpClient: HttpClient\n): GetMyPermissionsSignature {\n return (dataCollectionId: string) =>\n universalGetMyPermissions(\n dataCollectionId,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface GetMyPermissionsSignature {\n /**\n * Returns current user permissions for given data collection\n * @param - Data Collection ID to get permission for\n */\n (dataCollectionId: string): Promise<GetMyPermissionsResponse>;\n}\n\nexport {\n Access,\n AccessLevel,\n ActionEvent,\n AddSpecialPermissionsOptions,\n AddSpecialPermissionsRequest,\n AddSpecialPermissionsResponse,\n Condition,\n ConditionOperator,\n ConditionOperatorOperatorsOneOf,\n ConditionType,\n ConditionTypeOfOneOf,\n ConditionValue,\n ConditionValueValueOneOf,\n DataPermissions,\n DependOnOperator,\n DomainEvent,\n DomainEventBodyOneOf,\n Effect,\n Empty,\n EntityCreatedEvent,\n EntityDeletedEvent,\n EntityUpdatedEvent,\n EnvironmentCondition,\n EnvironmentConditionConditionOneOf,\n EqualOperator,\n ExperimentCondition,\n ExperimentOperator,\n GetMyPermissionsRequest,\n GetMyPermissionsResponse,\n GetPermissionsRequest,\n GetPermissionsResponse,\n JoinedCondition,\n JoinedConditionOperator,\n LikeOperator,\n MigrateCustomRolesRequest,\n MigrateCustomRolesResponse,\n PolicyAssigned,\n PolicyAssignment,\n PolicyAssignmentUpdated,\n PolicyAssignmentsUpdated,\n PolicyAssignmentsUpdatedEventOneOf,\n PolicyAuthorizationDataUpdated,\n PolicyCondition,\n PolicyOwner,\n PolicyOwnerType,\n PolicyStatement,\n PolicyType,\n PolicyUnassigned,\n RemoveSpecialPermissionsRequest,\n RemoveSpecialPermissionsResponse,\n Resource,\n ResourcePath,\n RestoreInfo,\n SimpleCondition,\n SimpleConditionOperator,\n SimpleConditionValue,\n SimpleConditionValueValueOneOf,\n SpecialPermissions,\n SpecialPermissionsSubjectOneOf,\n Subject,\n SubjectContext,\n SubjectContextType,\n SubjectType,\n UpdatePermissionsRequest,\n UpdatePermissionsResponse,\n UpdateSpecialPermissions,\n UpdateSpecialPermissionsRequest,\n UpdateSpecialPermissionsResponse,\n} from './data-v1-data-permissions-permissions.universal.js';\n","import {\n getPermissions as publicGetPermissions,\n updatePermissions as publicUpdatePermissions,\n addSpecialPermissions as publicAddSpecialPermissions,\n updateSpecialPermissions as publicUpdateSpecialPermissions,\n removeSpecialPermissions as publicRemoveSpecialPermissions,\n getMyPermissions as publicGetMyPermissions,\n} from './data-v1-data-permissions-permissions.public.js';\nimport { createRESTModule } from '@wix/sdk-runtime/rest-modules';\nimport { BuildRESTFunction, MaybeContext } from '@wix/sdk-types';\n\nexport const getPermissions: MaybeContext<\n BuildRESTFunction<typeof publicGetPermissions> & typeof publicGetPermissions\n> = /*#__PURE__*/ createRESTModule(publicGetPermissions);\nexport const updatePermissions: MaybeContext<\n BuildRESTFunction<typeof publicUpdatePermissions> &\n typeof publicUpdatePermissions\n> = /*#__PURE__*/ createRESTModule(publicUpdatePermissions);\nexport const addSpecialPermissions: MaybeContext<\n BuildRESTFunction<typeof publicAddSpecialPermissions> &\n typeof publicAddSpecialPermissions\n> = /*#__PURE__*/ createRESTModule(publicAddSpecialPermissions);\nexport const updateSpecialPermissions: MaybeContext<\n BuildRESTFunction<typeof publicUpdateSpecialPermissions> &\n typeof publicUpdateSpecialPermissions\n> = /*#__PURE__*/ createRESTModule(publicUpdateSpecialPermissions);\nexport const removeSpecialPermissions: MaybeContext<\n BuildRESTFunction<typeof publicRemoveSpecialPermissions> &\n typeof publicRemoveSpecialPermissions\n> = /*#__PURE__*/ createRESTModule(publicRemoveSpecialPermissions);\nexport const getMyPermissions: MaybeContext<\n BuildRESTFunction<typeof publicGetMyPermissions> &\n typeof publicGetMyPermissions\n> = /*#__PURE__*/ createRESTModule(publicGetMyPermissions);\n\nexport {\n AccessLevel,\n Access,\n SubjectType,\n SubjectContextType,\n SimpleConditionOperator,\n JoinedConditionOperator,\n Effect,\n PolicyType,\n PolicyOwnerType,\n} from './data-v1-data-permissions-permissions.universal.js';\nexport {\n DataPermissions,\n SpecialPermissions,\n SpecialPermissionsSubjectOneOf,\n GetPermissionsRequest,\n GetPermissionsResponse,\n UpdatePermissionsRequest,\n UpdatePermissionsResponse,\n AddSpecialPermissionsRequest,\n AddSpecialPermissionsResponse,\n UpdateSpecialPermissionsRequest,\n UpdateSpecialPermissionsResponse,\n RemoveSpecialPermissionsRequest,\n RemoveSpecialPermissionsResponse,\n GetMyPermissionsRequest,\n GetMyPermissionsResponse,\n MigrateCustomRolesRequest,\n MigrateCustomRolesResponse,\n PolicyAssignmentsUpdated,\n PolicyAssignmentsUpdatedEventOneOf,\n PolicyAssigned,\n Subject,\n SubjectContext,\n PolicyAssignment,\n ResourcePath,\n Resource,\n PolicyCondition,\n ConditionType,\n ConditionTypeOfOneOf,\n SimpleCondition,\n SimpleConditionValue,\n SimpleConditionValueValueOneOf,\n JoinedCondition,\n EnvironmentCondition,\n EnvironmentConditionConditionOneOf,\n ExperimentCondition,\n Condition,\n ConditionOperator,\n ConditionOperatorOperatorsOneOf,\n EqualOperator,\n ConditionValue,\n ConditionValueValueOneOf,\n LikeOperator,\n ExperimentOperator,\n DependOnOperator,\n PolicyUnassigned,\n PolicyAssignmentUpdated,\n Empty,\n PolicyAuthorizationDataUpdated,\n PolicyStatement,\n PolicyOwner,\n DomainEvent,\n DomainEventBodyOneOf,\n EntityCreatedEvent,\n RestoreInfo,\n EntityUpdatedEvent,\n EntityDeletedEvent,\n ActionEvent,\n AddSpecialPermissionsOptions,\n UpdateSpecialPermissions,\n} from './data-v1-data-permissions-permissions.universal.js';\n"],"mappings":"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","names":["AccessLevel","Access","SubjectType","SubjectContextType","SimpleConditionOperator","JoinedConditionOperator","Effect","PolicyType","PolicyOwnerType","getPermissions","updatePermissions","addSpecialPermissions","updateSpecialPermissions","removeSpecialPermissions","getMyPermissions","getPermissions","updatePermissions","addSpecialPermissions","updateSpecialPermissions","removeSpecialPermissions","getMyPermissions","getPermissions","updatePermissions","addSpecialPermissions","updateSpecialPermissions","removeSpecialPermissions","getMyPermissions"]}
1
+ {"version":3,"sources":["../../../src/data-v1-data-permissions-permissions.universal.ts","../../../src/data-v1-data-permissions-permissions.http.ts","../../../src/data-v1-data-permissions-permissions.public.ts","../../../src/data-v1-data-permissions-permissions.context.ts"],"sourcesContent":["import { transformError as sdkTransformError } from '@wix/sdk-runtime/transform-error';\nimport {\n renameKeysFromSDKRequestToRESTRequest,\n renameKeysFromRESTResponseToSDKResponse,\n} from '@wix/sdk-runtime/rename-all-nested-keys';\nimport { HttpClient, NonNullablePaths } from '@wix/sdk-types';\nimport * as ambassadorWixDataV1DataPermissions from './data-v1-data-permissions-permissions.http.js';\n\n/**\n * Permissions configuration of a data collection.\n *\n * Describes who can perform certain data operations on a collection.\n */\nexport interface DataPermissions {\n /**\n * Data Collection ID that is subject of these permissions\n * @immutable\n * @maxLength 255\n */\n _id?: string;\n /** Access level for data items read */\n itemRead?: AccessLevelWithLiterals;\n /** Access level for data items insert */\n itemInsert?: AccessLevelWithLiterals;\n /** Access level for data items update */\n itemUpdate?: AccessLevelWithLiterals;\n /** Access level for data items removal */\n itemRemove?: AccessLevelWithLiterals;\n}\n\n/**\n * Describes who can perform certain action.\n * Each level includes all levels below it (except UNDEFINED).\n */\nexport enum AccessLevel {\n /** Not set */\n UNKNOWN = 'UNKNOWN',\n /** Any subject, including visitors */\n ANYONE = 'ANYONE',\n /** Any signed-in user (both site members and collaborators) */\n SITE_MEMBER = 'SITE_MEMBER',\n /** Any signed-in user, but site members only have access to own items */\n SITE_MEMBER_AUTHOR = 'SITE_MEMBER_AUTHOR',\n /** Site collaborator that has a role with CMS Access permission */\n CMS_EDITOR = 'CMS_EDITOR',\n /** CMS administrators and users or roles granted with special access */\n PRIVILEGED = 'PRIVILEGED',\n}\n\n/** @enumType */\nexport type AccessLevelWithLiterals =\n | AccessLevel\n | 'UNKNOWN'\n | 'ANYONE'\n | 'SITE_MEMBER'\n | 'SITE_MEMBER_AUTHOR'\n | 'CMS_EDITOR'\n | 'PRIVILEGED';\n\n/** Special access granted to user or role */\nexport interface SpecialPermissions extends SpecialPermissionsSubjectOneOf {\n /**\n * User ID that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n userId?: string;\n /**\n * Policy ID of (custom) role that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n policyId?: string;\n /**\n * ID of this special access, so it can be managed separately\n * @format GUID\n * @readonly\n */\n _id?: string;\n /** If data item read is allowed */\n itemRead?: AccessWithLiterals;\n /** If data item insert is allowed */\n itemInsert?: AccessWithLiterals;\n /** If data item update is allowed */\n itemUpdate?: AccessWithLiterals;\n /** If data item remove is allowed */\n itemRemove?: AccessWithLiterals;\n}\n\n/** @oneof */\nexport interface SpecialPermissionsSubjectOneOf {\n /**\n * User ID that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n userId?: string;\n /**\n * Policy ID of (custom) role that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n policyId?: string;\n}\n\nexport enum Access {\n /** Action is not specifically allowed, but can be allowed by top-level permissions */\n UNSPECIFIED = 'UNSPECIFIED',\n /** Action is specifically allowed */\n ALLOWED = 'ALLOWED',\n}\n\n/** @enumType */\nexport type AccessWithLiterals = Access | 'UNSPECIFIED' | 'ALLOWED';\n\nexport interface GetPermissionsRequest {\n /**\n * Data Collection ID to get permissions for\n * @maxLength 256\n */\n dataCollectionId: string;\n}\n\nexport interface GetPermissionsResponse {\n /** Requested data permissions */\n dataPermissions?: DataPermissions;\n}\n\nexport interface UpdatePermissionsRequest {\n /** Data permissions to update */\n dataPermissions: DataPermissions;\n}\n\nexport interface UpdatePermissionsResponse {\n /** Updated data permissions */\n dataPermissions?: DataPermissions;\n}\n\nexport interface AddSpecialPermissionsRequest {\n /**\n * Data Collection ID to add special permission for\n * @maxLength 256\n */\n dataCollectionId: string;\n /** Special permissions to add */\n specialPermissions: SpecialPermissions;\n}\n\nexport interface AddSpecialPermissionsResponse {\n /** Added special data permissions */\n specialPermissions?: SpecialPermissions;\n}\n\nexport interface UpdateSpecialPermissionsRequest {\n /** Special permissions to update */\n specialPermissions: SpecialPermissions;\n}\n\nexport interface UpdateSpecialPermissionsResponse {\n /** Updated special data permissions */\n specialPermissions?: SpecialPermissions;\n}\n\nexport interface RemoveSpecialPermissionsRequest {\n /**\n * Special permissions ID to remove\n * @format GUID\n */\n specialPermissionsId: string;\n}\n\nexport interface RemoveSpecialPermissionsResponse {}\n\nexport interface GetMyPermissionsRequest {\n /**\n * Data Collection ID to get permission for\n * @maxLength 256\n */\n dataCollectionId: string;\n}\n\nexport interface GetMyPermissionsResponse {\n /** If data item read is allowed */\n itemRead?: boolean;\n /** If data item insert is allowed */\n itemInsert?: boolean;\n /** If data item update is allowed */\n itemUpdate?: boolean;\n /** If data item remove is allowed */\n itemRemove?: boolean;\n}\n\nexport interface MigrateCustomRolesRequest {\n /**\n * Role ID to update, if empty updates all roles in scope\n * @format GUID\n */\n policyId?: string | null;\n}\n\nexport interface MigrateCustomRolesResponse {}\n\nexport interface PolicyAssignmentsUpdated\n extends PolicyAssignmentsUpdatedEventOneOf {\n policyAssigned?: PolicyAssigned;\n policyUnassigned?: PolicyUnassigned;\n policyAssignmentUpdated?: PolicyAssignmentUpdated;\n}\n\n/** @oneof */\nexport interface PolicyAssignmentsUpdatedEventOneOf {\n policyAssigned?: PolicyAssigned;\n policyUnassigned?: PolicyUnassigned;\n policyAssignmentUpdated?: PolicyAssignmentUpdated;\n}\n\nexport interface PolicyAssigned {\n subject?: Subject;\n assignment?: PolicyAssignment[];\n}\n\nexport interface Subject {\n /** ID of identity assigned to the asset. */\n _id?: string;\n /** Type of identity assigned to the asset. Supported subject types include user IDs, account IDs, and app IDs. */\n subjectType?: SubjectTypeWithLiterals;\n /** Context of identity assigned to the asset. For example, a `subjectType` = `USER` will have `context` = `ACCOUNT`. */\n context?: SubjectContext;\n}\n\nexport enum SubjectType {\n UNKNOWN = 'UNKNOWN',\n ACCOUNT = 'ACCOUNT',\n USER = 'USER',\n USER_GROUP = 'USER_GROUP',\n MEMBER_GROUP = 'MEMBER_GROUP',\n VISITOR_GROUP = 'VISITOR_GROUP',\n EXTERNAL_APP = 'EXTERNAL_APP',\n ACCOUNT_GROUP = 'ACCOUNT_GROUP',\n WIX_APP = 'WIX_APP',\n}\n\n/** @enumType */\nexport type SubjectTypeWithLiterals =\n | SubjectType\n | 'UNKNOWN'\n | 'ACCOUNT'\n | 'USER'\n | 'USER_GROUP'\n | 'MEMBER_GROUP'\n | 'VISITOR_GROUP'\n | 'EXTERNAL_APP'\n | 'ACCOUNT_GROUP'\n | 'WIX_APP';\n\nexport interface SubjectContext {\n _id?: string;\n contextType?: SubjectContextTypeWithLiterals;\n}\n\nexport enum SubjectContextType {\n UNKNOWN_CTX = 'UNKNOWN_CTX',\n ORG_CTX = 'ORG_CTX',\n ACCOUNT_CTX = 'ACCOUNT_CTX',\n}\n\n/** @enumType */\nexport type SubjectContextTypeWithLiterals =\n | SubjectContextType\n | 'UNKNOWN_CTX'\n | 'ORG_CTX'\n | 'ACCOUNT_CTX';\n\nexport interface PolicyAssignment {\n policyId?: string;\n resource?: ResourcePath;\n condition?: PolicyCondition;\n assignmentId?: string | null;\n}\n\nexport interface ResourcePath {\n organization?: string | null;\n account?: string | null;\n site?: string | null;\n resource?: Resource;\n}\n\n/**\n * A custom resource. Is used to represent some asset that is not a direct resource context (site or account), but something custom.\n * For example: payment method, blog post, domain, logo.\n */\nexport interface Resource {\n /** The resource id. */\n _id?: string | null;\n /** The resource type */\n type?: string | null;\n}\n\nexport interface PolicyCondition {\n /** The type of the condition */\n condition?: ConditionType;\n}\n\nexport interface ConditionType extends ConditionTypeOfOneOf {\n /** @deprecated */\n simpleCondition?: SimpleCondition;\n /** A logic combination between several conditions, with an operator between them */\n joinedConditions?: JoinedCondition;\n /** @deprecated */\n environmentCondition?: EnvironmentCondition;\n /** A single condition */\n condition?: Condition;\n}\n\n/** @oneof */\nexport interface ConditionTypeOfOneOf {\n /** @deprecated */\n simpleCondition?: SimpleCondition;\n /** A logic combination between several conditions, with an operator between them */\n joinedConditions?: JoinedCondition;\n /** @deprecated */\n environmentCondition?: EnvironmentCondition;\n /** A single condition */\n condition?: Condition;\n}\n\nexport interface SimpleCondition {\n attrName?: string;\n value?: SimpleConditionValue;\n op?: SimpleConditionOperatorWithLiterals;\n conditionModelId?: string;\n}\n\nexport interface SimpleConditionValue extends SimpleConditionValueValueOneOf {\n attrName?: string;\n stringValue?: string;\n boolValue?: boolean;\n}\n\n/** @oneof */\nexport interface SimpleConditionValueValueOneOf {\n attrName?: string;\n stringValue?: string;\n boolValue?: boolean;\n}\n\nexport enum SimpleConditionOperator {\n UNKNOWN_SIMPLE_OP = 'UNKNOWN_SIMPLE_OP',\n EQUAL = 'EQUAL',\n}\n\n/** @enumType */\nexport type SimpleConditionOperatorWithLiterals =\n | SimpleConditionOperator\n | 'UNKNOWN_SIMPLE_OP'\n | 'EQUAL';\n\nexport interface JoinedCondition {\n /** The operator that should be used when evaluating the condition */\n op?: JoinedConditionOperatorWithLiterals;\n /** The conditions that should be evaluated, and then joined using the operator provided */\n conditions?: ConditionType[];\n}\n\nexport enum JoinedConditionOperator {\n UNKNOWN_JOIN_OP = 'UNKNOWN_JOIN_OP',\n OR = 'OR',\n AND = 'AND',\n}\n\n/** @enumType */\nexport type JoinedConditionOperatorWithLiterals =\n | JoinedConditionOperator\n | 'UNKNOWN_JOIN_OP'\n | 'OR'\n | 'AND';\n\nexport interface EnvironmentCondition\n extends EnvironmentConditionConditionOneOf {\n experimentCondition?: ExperimentCondition;\n}\n\n/** @oneof */\nexport interface EnvironmentConditionConditionOneOf {\n experimentCondition?: ExperimentCondition;\n}\n\nexport interface ExperimentCondition {\n spec?: string;\n fallbackValue?: string;\n expectedValue?: string;\n}\n\nexport interface Condition {\n /** The unique identifier of the condition model. Indicates which actions the condition is working on */\n conditionModelId?: string;\n /** The operator that should be evaluated */\n operator?: ConditionOperator;\n}\n\nexport interface ConditionOperator extends ConditionOperatorOperatorsOneOf {\n /** Comparison of equality - will be evaluated to true if the given parties are equal */\n equals?: EqualOperator;\n /** Regex operator - will be evaluated to true if the given value matches the provided regex */\n like?: LikeOperator;\n /** Petri experiment - will be evaluated using petri. */\n experiment?: ExperimentOperator;\n /** Operator that indicates a dependency on another subject being allowed to perform something. */\n dependOn?: DependOnOperator;\n}\n\n/** @oneof */\nexport interface ConditionOperatorOperatorsOneOf {\n /** Comparison of equality - will be evaluated to true if the given parties are equal */\n equals?: EqualOperator;\n /** Regex operator - will be evaluated to true if the given value matches the provided regex */\n like?: LikeOperator;\n /** Petri experiment - will be evaluated using petri. */\n experiment?: ExperimentOperator;\n /** Operator that indicates a dependency on another subject being allowed to perform something. */\n dependOn?: DependOnOperator;\n}\n\nexport interface EqualOperator {\n /** The attribute which should be compared. The attribute will be first evaluated to a value, and then compared the other side (attribute/value) */\n attrName?: string;\n /** The value to compare to. If the two parties are equal - we will return true. */\n value?: ConditionValue;\n}\n\nexport interface ConditionValue extends ConditionValueValueOneOf {\n /** an attribute. We'll first retrieve the value of the attribute (from the request or from pre-indexed values), and then compare to what it needs to be compared with. */\n attrName?: string;\n /** a value with a string type. Will be compared to the attribute provided, and be true only if they match the operator. */\n stringValue?: string;\n /** a value with a boolean type. Will be compared to the attribute provided, and be true only if they match the operator. */\n boolValue?: boolean;\n}\n\n/** @oneof */\nexport interface ConditionValueValueOneOf {\n /** an attribute. We'll first retrieve the value of the attribute (from the request or from pre-indexed values), and then compare to what it needs to be compared with. */\n attrName?: string;\n /** a value with a string type. Will be compared to the attribute provided, and be true only if they match the operator. */\n stringValue?: string;\n /** a value with a boolean type. Will be compared to the attribute provided, and be true only if they match the operator. */\n boolValue?: boolean;\n}\n\nexport interface LikeOperator {\n /** The attribute which should be compared. The attribute will be first evaluated to a value, and then compared the regex values provided. */\n attrName?: string;\n /** The regex values which the attribute value should be evaluated on. If the attribute value matches at least one of the regular expressions provided - we will return true */\n values?: string[];\n}\n\nexport interface ExperimentOperator {\n /** The spec to conduct the experiment on. */\n spec?: string;\n /** The value to use if the experiment could not be conducted */\n fallbackValue?: string;\n /** The expected value of the experiment conduction. If it matches the actual value - true will be returned. Otherwise - false. */\n expectedValue?: string;\n}\n\n/** Implies that the policy takes affect only if the depend on subject is permitted as well. */\nexport interface DependOnOperator {\n /** The subject on which the current entry depends on. If the subject is allowed to perform what the query was about - the condition will be evaluated to true. Otherwise - false */\n dependOnSubject?: Subject;\n}\n\nexport interface PolicyUnassigned {\n subject?: Subject;\n assignment?: PolicyAssignment[];\n}\n\nexport interface PolicyAssignmentUpdated {\n subject?: Subject;\n fromAssignment?: PolicyAssignment[];\n toAssignment?: PolicyAssignment[];\n}\n\nexport interface Empty {}\n\nexport interface PolicyAuthorizationDataUpdated {\n policyId?: string;\n fromPolicyStatements?: PolicyStatement[];\n toPolicyStatements?: PolicyStatement[];\n policyType?: PolicyTypeWithLiterals;\n policyOwner?: PolicyOwner;\n}\n\nexport interface PolicyStatement {\n /** @readonly */\n _id?: string | null;\n permissions?: string[];\n scopes?: string[];\n effect?: EffectWithLiterals;\n condition?: PolicyCondition;\n}\n\nexport enum Effect {\n UNKNOWN_EFFECT = 'UNKNOWN_EFFECT',\n ALLOW = 'ALLOW',\n DENY = 'DENY',\n}\n\n/** @enumType */\nexport type EffectWithLiterals = Effect | 'UNKNOWN_EFFECT' | 'ALLOW' | 'DENY';\n\nexport enum PolicyType {\n UNKNOWN_STATUS = 'UNKNOWN_STATUS',\n PREDEFINED = 'PREDEFINED',\n CUSTOM = 'CUSTOM',\n INLINE_CUSTOM = 'INLINE_CUSTOM',\n}\n\n/** @enumType */\nexport type PolicyTypeWithLiterals =\n | PolicyType\n | 'UNKNOWN_STATUS'\n | 'PREDEFINED'\n | 'CUSTOM'\n | 'INLINE_CUSTOM';\n\nexport interface PolicyOwner {\n type?: PolicyOwnerTypeWithLiterals;\n _id?: string;\n}\n\nexport enum PolicyOwnerType {\n UNKNOWN_TYPE = 'UNKNOWN_TYPE',\n WIX = 'WIX',\n WIX_ACCOUNT = 'WIX_ACCOUNT',\n}\n\n/** @enumType */\nexport type PolicyOwnerTypeWithLiterals =\n | PolicyOwnerType\n | 'UNKNOWN_TYPE'\n | 'WIX'\n | 'WIX_ACCOUNT';\n\nexport interface DomainEvent extends DomainEventBodyOneOf {\n createdEvent?: EntityCreatedEvent;\n updatedEvent?: EntityUpdatedEvent;\n deletedEvent?: EntityDeletedEvent;\n actionEvent?: ActionEvent;\n /** Event ID. With this ID you can easily spot duplicated events and ignore them. */\n _id?: string;\n /**\n * Fully Qualified Domain Name of an entity. This is a unique identifier assigned to the API main business entities.\n * For example, `wix.stores.catalog.product`, `wix.bookings.session`, `wix.payments.transaction`.\n */\n entityFqdn?: string;\n /**\n * Event action name, placed at the top level to make it easier for users to dispatch messages.\n * For example: `created`/`updated`/`deleted`/`started`/`completed`/`email_opened`.\n */\n slug?: string;\n /** ID of the entity associated with the event. */\n entityId?: string;\n /** Event timestamp in [ISO-8601](https://en.wikipedia.org/wiki/ISO_8601) format and UTC time. For example, `2020-04-26T13:57:50.699Z`. */\n eventTime?: Date | null;\n /**\n * Whether the event was triggered as a result of a privacy regulation application\n * (for example, GDPR).\n */\n triggeredByAnonymizeRequest?: boolean | null;\n /** If present, indicates the action that triggered the event. */\n originatedFrom?: string | null;\n /**\n * A sequence number that indicates the order of updates to an entity. For example, if an entity was updated at 16:00 and then again at 16:01, the second update will always have a higher sequence number.\n * You can use this number to make sure you're handling updates in the right order. Just save the latest sequence number on your end and compare it to the one in each new message. If the new message has an older (lower) number, you can safely ignore it.\n */\n entityEventSequence?: string | null;\n}\n\n/** @oneof */\nexport interface DomainEventBodyOneOf {\n createdEvent?: EntityCreatedEvent;\n updatedEvent?: EntityUpdatedEvent;\n deletedEvent?: EntityDeletedEvent;\n actionEvent?: ActionEvent;\n}\n\nexport interface EntityCreatedEvent {\n entity?: string;\n}\n\nexport interface RestoreInfo {\n deletedDate?: Date | null;\n}\n\nexport interface EntityUpdatedEvent {\n /**\n * Since platformized APIs only expose PATCH and not PUT we can't assume that the fields sent from the client are the actual diff.\n * This means that to generate a list of changed fields (as opposed to sent fields) one needs to traverse both objects.\n * We don't want to impose this on all developers and so we leave this traversal to the notification recipients which need it.\n */\n currentEntity?: string;\n}\n\nexport interface EntityDeletedEvent {\n /** Entity that was deleted. */\n deletedEntity?: string | null;\n}\n\nexport interface ActionEvent {\n body?: string;\n}\n\ntype DataPermissionsNonNullablePaths =\n | `_id`\n | `itemRead`\n | `itemInsert`\n | `itemUpdate`\n | `itemRemove`;\n\n/**\n * Returns data permissions for a data collection\n * @param dataCollectionId - Data Collection ID to get permissions for\n * @public\n * @documentationMaturity preview\n * @requiredField dataCollectionId\n * @permissionId WIX_DATA.PERMISSIONS_READ\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.GetPermissions\n */\nexport async function getPermissions(\n dataCollectionId: string\n): Promise<\n NonNullablePaths<\n GetPermissionsResponse,\n {\n [P in DataPermissionsNonNullablePaths]: `dataPermissions.${P}`;\n }[DataPermissionsNonNullablePaths]\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n dataCollectionId: dataCollectionId,\n });\n\n const reqOpts = ambassadorWixDataV1DataPermissions.getPermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { dataCollectionId: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['dataCollectionId']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Updates data permissions for a data collection\n *\n * NOTE that special permissions are not updated using this API, use dedicated methods for it.\n * @param dataPermissions - Data permissions to update\n * @public\n * @documentationMaturity preview\n * @requiredField dataPermissions\n * @requiredField dataPermissions._id\n * @requiredField dataPermissions.itemInsert\n * @requiredField dataPermissions.itemRead\n * @requiredField dataPermissions.itemRemove\n * @requiredField dataPermissions.itemUpdate\n * @permissionId WIX_DATA.PERMISSIONS_UPDATE\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.UpdatePermissions\n */\nexport async function updatePermissions(\n dataPermissions: NonNullablePaths<\n DataPermissions,\n `_id` | `itemInsert` | `itemRead` | `itemRemove` | `itemUpdate`\n >\n): Promise<\n NonNullablePaths<\n UpdatePermissionsResponse,\n {\n [P in DataPermissionsNonNullablePaths]: `dataPermissions.${P}`;\n }[DataPermissionsNonNullablePaths]\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n dataPermissions: dataPermissions,\n });\n\n const reqOpts = ambassadorWixDataV1DataPermissions.updatePermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { dataPermissions: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['dataPermissions']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Adds special data permissions for particular user/group\n * Errors:\n * - `ALREADY_EXISTS` in case if special permission for same subject already exists\n * @param dataCollectionId - Data Collection ID to add special permission for\n * @public\n * @documentationMaturity preview\n * @requiredField dataCollectionId\n * @requiredField options\n * @requiredField options.specialPermissions\n * @permissionId WIX_DATA.PERMISSIONS_UPDATE_SPECIAL\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.AddSpecialPermissions\n */\nexport async function addSpecialPermissions(\n dataCollectionId: string,\n options: NonNullablePaths<AddSpecialPermissionsOptions, `specialPermissions`>\n): Promise<\n NonNullablePaths<\n AddSpecialPermissionsResponse,\n | `specialPermissions.userId`\n | `specialPermissions.policyId`\n | `specialPermissions._id`\n | `specialPermissions.itemRead`\n | `specialPermissions.itemInsert`\n | `specialPermissions.itemUpdate`\n | `specialPermissions.itemRemove`\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[2] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n dataCollectionId: dataCollectionId,\n specialPermissions: options?.specialPermissions,\n });\n\n const reqOpts =\n ambassadorWixDataV1DataPermissions.addSpecialPermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: {\n dataCollectionId: '$[0]',\n specialPermissions: '$[1].specialPermissions',\n },\n singleArgumentUnchanged: false,\n },\n ['dataCollectionId', 'options']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\nexport interface AddSpecialPermissionsOptions {\n /** Special permissions to add */\n specialPermissions: SpecialPermissions;\n}\n\n/**\n * Updates special data permissions for particular user/group.\n * Any omitted permissions will be set to UNSPECIFIED.\n * @param _id - ID of this special access, so it can be managed separately\n * @public\n * @documentationMaturity preview\n * @requiredField _id\n * @requiredField specialPermissions\n * @permissionId WIX_DATA.PERMISSIONS_UPDATE_SPECIAL\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.UpdateSpecialPermissions\n */\nexport async function updateSpecialPermissions(\n _id: string,\n specialPermissions: UpdateSpecialPermissions\n): Promise<\n NonNullablePaths<\n UpdateSpecialPermissionsResponse,\n | `specialPermissions.userId`\n | `specialPermissions.policyId`\n | `specialPermissions._id`\n | `specialPermissions.itemRead`\n | `specialPermissions.itemInsert`\n | `specialPermissions.itemUpdate`\n | `specialPermissions.itemRemove`\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[2] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n specialPermissions: { ...specialPermissions, id: _id },\n });\n\n const reqOpts =\n ambassadorWixDataV1DataPermissions.updateSpecialPermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: { specialPermissions: '$[1]' },\n explicitPathsToArguments: { 'specialPermissions.id': '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['_id', 'specialPermissions']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\nexport interface UpdateSpecialPermissions {\n /**\n * User ID that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n userId?: string;\n /**\n * Policy ID of (custom) role that is subject of these permissions\n * @immutable\n * @maxLength 64\n */\n policyId?: string;\n /**\n * ID of this special access, so it can be managed separately\n * @format GUID\n * @readonly\n */\n _id?: string;\n /** If data item read is allowed */\n itemRead?: AccessWithLiterals;\n /** If data item insert is allowed */\n itemInsert?: AccessWithLiterals;\n /** If data item update is allowed */\n itemUpdate?: AccessWithLiterals;\n /** If data item remove is allowed */\n itemRemove?: AccessWithLiterals;\n}\n\n/**\n * Deletes special data permissions for particular user/group\n * @param specialPermissionsId - Special permissions ID to remove\n * @public\n * @documentationMaturity preview\n * @requiredField specialPermissionsId\n * @permissionId WIX_DATA.PERMISSIONS_UPDATE_SPECIAL\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.RemoveSpecialPermissions\n */\nexport async function removeSpecialPermissions(\n specialPermissionsId: string\n): Promise<void> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n specialPermissionsId: specialPermissionsId,\n });\n\n const reqOpts =\n ambassadorWixDataV1DataPermissions.removeSpecialPermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { specialPermissionsId: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['specialPermissionsId']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n\n/**\n * Returns current user permissions for given data collection\n * @param dataCollectionId - Data Collection ID to get permission for\n * @public\n * @documentationMaturity preview\n * @requiredField dataCollectionId\n * @permissionId WIX_DATA.PERMISSIONS_GET_ALLOWED\n * @applicableIdentity APP\n * @fqn wix.cloud.permissions.v1.DataPermissionsService.GetMyPermissions\n */\nexport async function getMyPermissions(\n dataCollectionId: string\n): Promise<\n NonNullablePaths<\n GetMyPermissionsResponse,\n `itemRead` | `itemInsert` | `itemUpdate` | `itemRemove`\n >\n> {\n // @ts-ignore\n const { httpClient, sideEffects } = arguments[1] as {\n httpClient: HttpClient;\n sideEffects?: any;\n };\n\n const payload = renameKeysFromSDKRequestToRESTRequest({\n dataCollectionId: dataCollectionId,\n });\n\n const reqOpts = ambassadorWixDataV1DataPermissions.getMyPermissions(payload);\n\n sideEffects?.onSiteCall?.();\n try {\n const result = await httpClient.request(reqOpts);\n sideEffects?.onSuccess?.(result);\n\n return renameKeysFromRESTResponseToSDKResponse(result.data)!;\n } catch (err: any) {\n const transformedError = sdkTransformError(\n err,\n {\n spreadPathsToArguments: {},\n explicitPathsToArguments: { dataCollectionId: '$[0]' },\n singleArgumentUnchanged: false,\n },\n ['dataCollectionId']\n );\n sideEffects?.onError?.(err);\n\n throw transformedError;\n }\n}\n","import { toURLSearchParams } from '@wix/sdk-runtime/rest-modules';\nimport { resolveUrl } from '@wix/sdk-runtime/rest-modules';\nimport { ResolveUrlOpts } from '@wix/sdk-runtime/rest-modules';\nimport { RequestOptionsFactory } from '@wix/sdk-types';\n\nfunction resolveWixCloudPermissionsV1DataPermissionsServiceUrl(\n opts: Omit<ResolveUrlOpts, 'domainToMappings'>\n) {\n const domainToMappings = {\n 'manage._base_domain_': [\n {\n srcPath: '/_api/cloud-data/v1/permissions',\n destPath: '/v1/permissions',\n },\n ],\n 'editor._base_domain_': [\n {\n srcPath: '/_api/cloud-data/v1/permissions',\n destPath: '/v1/permissions',\n },\n ],\n 'blocks._base_domain_': [\n {\n srcPath: '/_api/cloud-data/v1/permissions',\n destPath: '/v1/permissions',\n },\n ],\n 'create.editorx': [\n {\n srcPath: '/_api/cloud-data/v1/permissions',\n destPath: '/v1/permissions',\n },\n ],\n };\n\n return resolveUrl(Object.assign(opts, { domainToMappings }));\n}\n\nconst PACKAGE_NAME = '@wix/auto_sdk_data_permissions';\n\n/** Returns data permissions for a data collection */\nexport function getPermissions(payload: object): RequestOptionsFactory<any> {\n function __getPermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'GET' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.GetPermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n };\n\n return metadata;\n }\n\n return __getPermissions;\n}\n\n/**\n * Updates data permissions for a data collection\n *\n * NOTE that special permissions are not updated using this API, use dedicated methods for it.\n */\nexport function updatePermissions(payload: object): RequestOptionsFactory<any> {\n function __updatePermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'POST' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.UpdatePermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions',\n data: payload,\n host,\n }),\n data: payload,\n };\n\n return metadata;\n }\n\n return __updatePermissions;\n}\n\n/**\n * Adds special data permissions for particular user/group\n * Errors:\n * - `ALREADY_EXISTS` in case if special permission for same subject already exists\n */\nexport function addSpecialPermissions(\n payload: object\n): RequestOptionsFactory<any> {\n function __addSpecialPermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'POST' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.AddSpecialPermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions/special',\n data: payload,\n host,\n }),\n data: payload,\n };\n\n return metadata;\n }\n\n return __addSpecialPermissions;\n}\n\n/**\n * Updates special data permissions for particular user/group.\n * Any omitted permissions will be set to UNSPECIFIED.\n */\nexport function updateSpecialPermissions(\n payload: object\n): RequestOptionsFactory<any> {\n function __updateSpecialPermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'POST' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.UpdateSpecialPermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions/special/{specialPermissions.id}',\n data: payload,\n host,\n }),\n data: payload,\n };\n\n return metadata;\n }\n\n return __updateSpecialPermissions;\n}\n\n/** Deletes special data permissions for particular user/group */\nexport function removeSpecialPermissions(\n payload: object\n): RequestOptionsFactory<any> {\n function __removeSpecialPermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'DELETE' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.RemoveSpecialPermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions/special/{specialPermissionsId}',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n };\n\n return metadata;\n }\n\n return __removeSpecialPermissions;\n}\n\n/** Returns current user permissions for given data collection */\nexport function getMyPermissions(payload: object): RequestOptionsFactory<any> {\n function __getMyPermissions({ host }: any) {\n const metadata = {\n entityFqdn: 'wix.data.v1.data_permissions',\n method: 'GET' as any,\n methodFqn:\n 'wix.cloud.permissions.v1.DataPermissionsService.GetMyPermissions',\n packageName: PACKAGE_NAME,\n url: resolveWixCloudPermissionsV1DataPermissionsServiceUrl({\n protoPath: '/v1/permissions/current',\n data: payload,\n host,\n }),\n params: toURLSearchParams(payload),\n };\n\n return metadata;\n }\n\n return __getMyPermissions;\n}\n","import { HttpClient, NonNullablePaths } from '@wix/sdk-types';\nimport {\n AddSpecialPermissionsOptions,\n AddSpecialPermissionsResponse,\n DataPermissions,\n GetMyPermissionsResponse,\n GetPermissionsResponse,\n UpdatePermissionsResponse,\n UpdateSpecialPermissions,\n UpdateSpecialPermissionsResponse,\n addSpecialPermissions as universalAddSpecialPermissions,\n getMyPermissions as universalGetMyPermissions,\n getPermissions as universalGetPermissions,\n removeSpecialPermissions as universalRemoveSpecialPermissions,\n updatePermissions as universalUpdatePermissions,\n updateSpecialPermissions as universalUpdateSpecialPermissions,\n} from './data-v1-data-permissions-permissions.universal.js';\n\nexport const __metadata = { PACKAGE_NAME: '@wix/data' };\n\nexport function getPermissions(\n httpClient: HttpClient\n): GetPermissionsSignature {\n return (dataCollectionId: string) =>\n universalGetPermissions(\n dataCollectionId,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface GetPermissionsSignature {\n /**\n * Returns data permissions for a data collection\n * @param - Data Collection ID to get permissions for\n */\n (dataCollectionId: string): Promise<GetPermissionsResponse>;\n}\n\nexport function updatePermissions(\n httpClient: HttpClient\n): UpdatePermissionsSignature {\n return (\n dataPermissions: NonNullablePaths<\n DataPermissions,\n `_id` | `itemInsert` | `itemRead` | `itemRemove` | `itemUpdate`\n >\n ) =>\n universalUpdatePermissions(\n dataPermissions,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface UpdatePermissionsSignature {\n /**\n * Updates data permissions for a data collection\n *\n * NOTE that special permissions are not updated using this API, use dedicated methods for it.\n * @param - Data permissions to update\n */\n (dataPermissions: DataPermissions): Promise<UpdatePermissionsResponse>;\n}\n\nexport function addSpecialPermissions(\n httpClient: HttpClient\n): AddSpecialPermissionsSignature {\n return (\n dataCollectionId: string,\n options: NonNullablePaths<\n AddSpecialPermissionsOptions,\n `specialPermissions`\n >\n ) =>\n universalAddSpecialPermissions(\n dataCollectionId,\n options,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface AddSpecialPermissionsSignature {\n /**\n * Adds special data permissions for particular user/group\n * Errors:\n * - `ALREADY_EXISTS` in case if special permission for same subject already exists\n * @param - Data Collection ID to add special permission for\n */\n (\n dataCollectionId: string,\n options: AddSpecialPermissionsOptions\n ): Promise<AddSpecialPermissionsResponse>;\n}\n\nexport function updateSpecialPermissions(\n httpClient: HttpClient\n): UpdateSpecialPermissionsSignature {\n return (_id: string, specialPermissions: UpdateSpecialPermissions) =>\n universalUpdateSpecialPermissions(\n _id,\n specialPermissions,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface UpdateSpecialPermissionsSignature {\n /**\n * Updates special data permissions for particular user/group.\n * Any omitted permissions will be set to UNSPECIFIED.\n * @param - ID of this special access, so it can be managed separately\n */\n (\n _id: string,\n specialPermissions: UpdateSpecialPermissions\n ): Promise<UpdateSpecialPermissionsResponse>;\n}\n\nexport function removeSpecialPermissions(\n httpClient: HttpClient\n): RemoveSpecialPermissionsSignature {\n return (specialPermissionsId: string) =>\n universalRemoveSpecialPermissions(\n specialPermissionsId,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface RemoveSpecialPermissionsSignature {\n /**\n * Deletes special data permissions for particular user/group\n * @param - Special permissions ID to remove\n */\n (specialPermissionsId: string): Promise<void>;\n}\n\nexport function getMyPermissions(\n httpClient: HttpClient\n): GetMyPermissionsSignature {\n return (dataCollectionId: string) =>\n universalGetMyPermissions(\n dataCollectionId,\n // @ts-ignore\n { httpClient }\n );\n}\n\ninterface GetMyPermissionsSignature {\n /**\n * Returns current user permissions for given data collection\n * @param - Data Collection ID to get permission for\n */\n (dataCollectionId: string): Promise<GetMyPermissionsResponse>;\n}\n\nexport {\n Access,\n AccessLevel,\n ActionEvent,\n AddSpecialPermissionsOptions,\n AddSpecialPermissionsRequest,\n AddSpecialPermissionsResponse,\n Condition,\n ConditionOperator,\n ConditionOperatorOperatorsOneOf,\n ConditionType,\n ConditionTypeOfOneOf,\n ConditionValue,\n ConditionValueValueOneOf,\n DataPermissions,\n DependOnOperator,\n DomainEvent,\n DomainEventBodyOneOf,\n Effect,\n Empty,\n EntityCreatedEvent,\n EntityDeletedEvent,\n EntityUpdatedEvent,\n EnvironmentCondition,\n EnvironmentConditionConditionOneOf,\n EqualOperator,\n ExperimentCondition,\n ExperimentOperator,\n GetMyPermissionsRequest,\n GetMyPermissionsResponse,\n GetPermissionsRequest,\n GetPermissionsResponse,\n JoinedCondition,\n JoinedConditionOperator,\n LikeOperator,\n MigrateCustomRolesRequest,\n MigrateCustomRolesResponse,\n PolicyAssigned,\n PolicyAssignment,\n PolicyAssignmentUpdated,\n PolicyAssignmentsUpdated,\n PolicyAssignmentsUpdatedEventOneOf,\n PolicyAuthorizationDataUpdated,\n PolicyCondition,\n PolicyOwner,\n PolicyOwnerType,\n PolicyStatement,\n PolicyType,\n PolicyUnassigned,\n RemoveSpecialPermissionsRequest,\n RemoveSpecialPermissionsResponse,\n Resource,\n ResourcePath,\n RestoreInfo,\n SimpleCondition,\n SimpleConditionOperator,\n SimpleConditionValue,\n SimpleConditionValueValueOneOf,\n SpecialPermissions,\n SpecialPermissionsSubjectOneOf,\n Subject,\n SubjectContext,\n SubjectContextType,\n SubjectType,\n UpdatePermissionsRequest,\n UpdatePermissionsResponse,\n UpdateSpecialPermissions,\n UpdateSpecialPermissionsRequest,\n UpdateSpecialPermissionsResponse,\n} from './data-v1-data-permissions-permissions.universal.js';\n","import {\n getPermissions as publicGetPermissions,\n updatePermissions as publicUpdatePermissions,\n addSpecialPermissions as publicAddSpecialPermissions,\n updateSpecialPermissions as publicUpdateSpecialPermissions,\n removeSpecialPermissions as publicRemoveSpecialPermissions,\n getMyPermissions as publicGetMyPermissions,\n} from './data-v1-data-permissions-permissions.public.js';\nimport { createRESTModule } from '@wix/sdk-runtime/rest-modules';\nimport { BuildRESTFunction, MaybeContext } from '@wix/sdk-types';\n\nexport const getPermissions: MaybeContext<\n BuildRESTFunction<typeof publicGetPermissions> & typeof publicGetPermissions\n> = /*#__PURE__*/ createRESTModule(publicGetPermissions);\nexport const updatePermissions: MaybeContext<\n BuildRESTFunction<typeof publicUpdatePermissions> &\n typeof publicUpdatePermissions\n> = /*#__PURE__*/ createRESTModule(publicUpdatePermissions);\nexport const addSpecialPermissions: MaybeContext<\n BuildRESTFunction<typeof publicAddSpecialPermissions> &\n typeof publicAddSpecialPermissions\n> = /*#__PURE__*/ createRESTModule(publicAddSpecialPermissions);\nexport const updateSpecialPermissions: MaybeContext<\n BuildRESTFunction<typeof publicUpdateSpecialPermissions> &\n typeof publicUpdateSpecialPermissions\n> = /*#__PURE__*/ createRESTModule(publicUpdateSpecialPermissions);\nexport const removeSpecialPermissions: MaybeContext<\n BuildRESTFunction<typeof publicRemoveSpecialPermissions> &\n typeof publicRemoveSpecialPermissions\n> = /*#__PURE__*/ createRESTModule(publicRemoveSpecialPermissions);\nexport const getMyPermissions: MaybeContext<\n BuildRESTFunction<typeof publicGetMyPermissions> &\n typeof publicGetMyPermissions\n> = /*#__PURE__*/ createRESTModule(publicGetMyPermissions);\n\nexport {\n AccessLevel,\n Access,\n SubjectType,\n SubjectContextType,\n SimpleConditionOperator,\n JoinedConditionOperator,\n Effect,\n PolicyType,\n PolicyOwnerType,\n} from './data-v1-data-permissions-permissions.universal.js';\nexport {\n DataPermissions,\n SpecialPermissions,\n SpecialPermissionsSubjectOneOf,\n GetPermissionsRequest,\n GetPermissionsResponse,\n UpdatePermissionsRequest,\n UpdatePermissionsResponse,\n AddSpecialPermissionsRequest,\n AddSpecialPermissionsResponse,\n UpdateSpecialPermissionsRequest,\n UpdateSpecialPermissionsResponse,\n RemoveSpecialPermissionsRequest,\n RemoveSpecialPermissionsResponse,\n GetMyPermissionsRequest,\n GetMyPermissionsResponse,\n MigrateCustomRolesRequest,\n MigrateCustomRolesResponse,\n PolicyAssignmentsUpdated,\n PolicyAssignmentsUpdatedEventOneOf,\n PolicyAssigned,\n Subject,\n SubjectContext,\n PolicyAssignment,\n ResourcePath,\n Resource,\n PolicyCondition,\n ConditionType,\n ConditionTypeOfOneOf,\n SimpleCondition,\n SimpleConditionValue,\n SimpleConditionValueValueOneOf,\n JoinedCondition,\n EnvironmentCondition,\n EnvironmentConditionConditionOneOf,\n ExperimentCondition,\n Condition,\n ConditionOperator,\n ConditionOperatorOperatorsOneOf,\n EqualOperator,\n ConditionValue,\n ConditionValueValueOneOf,\n LikeOperator,\n ExperimentOperator,\n DependOnOperator,\n PolicyUnassigned,\n PolicyAssignmentUpdated,\n Empty,\n PolicyAuthorizationDataUpdated,\n PolicyStatement,\n PolicyOwner,\n DomainEvent,\n DomainEventBodyOneOf,\n EntityCreatedEvent,\n RestoreInfo,\n EntityUpdatedEvent,\n EntityDeletedEvent,\n ActionEvent,\n AddSpecialPermissionsOptions,\n UpdateSpecialPermissions,\n} from './data-v1-data-permissions-permissions.universal.js';\n"],"mappings":"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","names":["AccessLevel","Access","SubjectType","SubjectContextType","SimpleConditionOperator","JoinedConditionOperator","Effect","PolicyType","PolicyOwnerType","getPermissions","updatePermissions","addSpecialPermissions","updateSpecialPermissions","removeSpecialPermissions","getMyPermissions","getPermissions","updatePermissions","addSpecialPermissions","updateSpecialPermissions","removeSpecialPermissions","getMyPermissions","getPermissions","updatePermissions","addSpecialPermissions","updateSpecialPermissions","removeSpecialPermissions","getMyPermissions"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wix/auto_sdk_data_permissions",
3
- "version": "1.0.13",
3
+ "version": "1.0.14",
4
4
  "publishConfig": {
5
5
  "registry": "https://registry.npmjs.org/",
6
6
  "access": "public"
@@ -49,5 +49,5 @@
49
49
  "fqdn": "wix.data.v1.data_permissions"
50
50
  }
51
51
  },
52
- "falconPackageHash": "4240c41b824b09c18d14d643296c8f5b452c4cca4c3d62ec28a40856"
52
+ "falconPackageHash": "ea987e699f11d670e7b711300512b0e158a808c2fbaa09bb904cf233"
53
53
  }