import { RemoveMemberRequest as RemoveMemberRequest$1, RemoveMemberResponse as RemoveMemberResponse$1, SearchTeamRequest as SearchTeamRequest$1, SearchTeamResponse as SearchTeamResponse$1, GetRolesInfoRequest as GetRolesInfoRequest$1, GetRolesInfoResponse as GetRolesInfoResponse$1, ChangeRoleV2Request as ChangeRoleV2Request$1, ChangeRoleV2Response as ChangeRoleV2Response$1, UpdateTeamMemberAssignmentsRequest as UpdateTeamMemberAssignmentsRequest$1, UpdateTeamMemberAssignmentsResponse as UpdateTeamMemberAssignmentsResponse$1 } from './index.typings.js'; import '@wix/sdk-types'; interface User { /** User ID. */ id?: string; /** * Deprecated. * @deprecated */ roles?: string[]; /** User's email address. */ email?: string; /** User's name. */ name?: Name; /** URL to user's profile image, when provided. */ profileImage?: string | null; /** Date the user joined the team. */ joinedTeamAt?: Date | null; /** * Deprecated. * @deprecated */ policyIds?: string[]; /** Resources the user can access. */ assignments?: Assignment[]; } interface Name { /** User's first name. */ firstName?: string; /** User's last name. */ lastName?: string; } interface Assignment { /** Role assigned to the user. */ policy?: AssignedPolicy; /** Unique ID for this specific assignment. */ assignmentId?: string; /** Identity assigned to the asset in an assignment, referred to as subject. Supported subjects include user IDs, account IDs, and app IDs. */ subject?: Subject; } interface AssignedPolicy { /** Role ID. */ policyId?: string; /** Role title. */ title?: string | null; /** Role description. */ description?: string | null; } interface Restriction extends RestrictionRestrictionsOneOf { /** * Deprecated. * @deprecated */ resource?: ApiResource; /** List of conditions restricting the user's access. Currently only folder conditions are supported. */ conditions?: Conditions; /** Site where the assignment restrictions apply. */ site?: SiteRestriction; /** Business locations where the assignment restrictions apply. Get location IDs from the [Locations API](https://dev.wix.com/docs/api-reference/business-management/locations/introduction). */ locations?: LocationsRestriction; } /** @oneof */ interface RestrictionRestrictionsOneOf { /** * Deprecated. * @deprecated */ resource?: ApiResource; /** List of conditions restricting the user's access. Currently only folder conditions are supported. */ conditions?: Conditions; /** Site where the assignment restrictions apply. */ site?: SiteRestriction; /** Business locations where the assignment restrictions apply. Get location IDs from the [Locations API](https://dev.wix.com/docs/api-reference/business-management/locations/introduction). */ locations?: LocationsRestriction; } interface ApiResource { /** Resource type. */ resourceType?: ResourceTypeWithLiterals; /** Resource ID. */ id?: string; value?: string | null; } declare enum ResourceType { UNKNOWN_RESOURCE_TYPE = "UNKNOWN_RESOURCE_TYPE", SITE = "SITE" } /** @enumType */ type ResourceTypeWithLiterals = ResourceType | 'UNKNOWN_RESOURCE_TYPE' | 'SITE'; interface Conditions { /** List of conditions. */ conditions?: ApiCondition[]; } interface ApiCondition { /** Condition type. */ conditionType?: ConditionAttributeTypeWithLiterals; /** Condition ID. */ id?: string; /** Expected value of the condition. When `conditionType` = "FOLDER", this is the folder path. */ value?: string | null; } declare enum ConditionAttributeType { UNKNOWN_CONDITION_TYPE = "UNKNOWN_CONDITION_TYPE", FOLDER = "FOLDER" } /** @enumType */ type ConditionAttributeTypeWithLiterals = ConditionAttributeType | 'UNKNOWN_CONDITION_TYPE' | 'FOLDER'; interface SiteRestriction { /** Site ID. */ id?: string; /** Site name. */ value?: string | null; } interface CompanionResource { /** Asset ID (referred to here as resource ID). */ id?: string; /** Asset type (referred to here as resource type). as predefined in the authorization system */ resourceType?: string; } interface LocationsRestriction { /** * Location IDs where the assignment restrictions apply. * @format GUID * @maxSize 20 */ ids?: string[]; } interface Subject { /** ID of identity assigned to the asset. */ id?: string; /** Type of identity assigned to the asset. Supported subject types include user IDs, account IDs, and app IDs. */ subjectType?: SubjectTypeWithLiterals; /** Context of identity assigned to the asset. For example, a `subjectType` = `USER` will have `context` = `ACCOUNT`. */ context?: SubjectContext; } declare enum SubjectType { UNKNOWN = "UNKNOWN", ACCOUNT = "ACCOUNT", USER = "USER", USER_GROUP = "USER_GROUP", MEMBER_GROUP = "MEMBER_GROUP", VISITOR_GROUP = "VISITOR_GROUP", EXTERNAL_APP = "EXTERNAL_APP", ACCOUNT_GROUP = "ACCOUNT_GROUP", WIX_APP = "WIX_APP" } /** @enumType */ type SubjectTypeWithLiterals = SubjectType | 'UNKNOWN' | 'ACCOUNT' | 'USER' | 'USER_GROUP' | 'MEMBER_GROUP' | 'VISITOR_GROUP' | 'EXTERNAL_APP' | 'ACCOUNT_GROUP' | 'WIX_APP'; interface SubjectContext { id?: string; contextType?: SubjectContextTypeWithLiterals; } declare enum SubjectContextType { UNKNOWN_CTX = "UNKNOWN_CTX", ORG_CTX = "ORG_CTX", ACCOUNT_CTX = "ACCOUNT_CTX" } /** @enumType */ type SubjectContextTypeWithLiterals = SubjectContextType | 'UNKNOWN_CTX' | 'ORG_CTX' | 'ACCOUNT_CTX'; interface GetTeamRequest { /** @deprecated */ usersLimit?: number | null; /** The locale of the request. Defaults to en */ locale?: string | null; paging?: Paging; } interface Paging { /** Number of items to load. */ limit?: number | null; /** Number of items to skip in the current sort order. */ offset?: number | null; } interface GetTeamResponse { users?: User[]; invites?: AccountInvite[]; accountInfo?: AccountInfo; permissions?: string[]; userId?: string; targetAccountId?: string; policies?: ApiPolicy[]; totalUsersInAccount?: string; predefinedRoles?: PredefinedRoles; } interface AccountInvite { /** * Invite ID. * @format GUID * @readonly */ id?: string; /** * Account ID. * @format GUID * @readonly */ accountId?: string; /** * Email address where the invite was sent. * @format EMAIL */ email?: string; /** * Deprecated. Use `policyIds`. * @deprecated */ role?: string; /** * Deprecated. Use `inviterAccountId`. * @readonly * @deprecated */ inviterId?: string; /** * Invite status. * * Supported values: * - **Pending:** The invite has been sent and is valid, waiting for the user's response. * - **Used:** The invite has been accepted. * - **Deleted:** The invite has been deleted or revoked. * - **Declined:** The user has declined the invite. * - **Expired:** The invite has expired without being accepted. */ status?: InviteStatusWithLiterals; /** Link to accept the invite. */ acceptLink?: string; /** * Inviting account ID. * @format GUID * @readonly */ inviterAccountId?: string; /** * Account ID that accepted the invite. Populated only once the invite is accepted. * @format GUID * @readonly */ acceptedByAccountId?: string | null; /** Date the invite was created. */ dateCreated?: Date | null; /** Role IDs included in the invite. */ policyIds?: string[]; /** Date the invite was last updated. */ dateUpdated?: Date | null; /** Assets the users are invited to join. */ assignments?: InviteResourceAssignment[]; /** Invite expiration date. */ expirationDate?: Date | null; } /** Invite status stating whether the invite was accepted, waiting to be accepted, deleted etc.. */ declare enum InviteStatus { Pending = "Pending", Used = "Used", Deleted = "Deleted", Declined = "Declined", Expired = "Expired" } /** @enumType */ type InviteStatusWithLiterals = InviteStatus | 'Pending' | 'Used' | 'Deleted' | 'Declined' | 'Expired'; interface InviteResourceAssignment { /** Role ID. */ policyId?: string; /** Resources the user will be able to access. */ assignments?: InviteAssignment[]; } interface InviteAssignment { /** Full name of resource to be assigned. */ fullNameResource?: FullNameResource; } interface FullNameResource extends FullNameResourceResourceContextOneOf { /** Specific site details. */ siteContext?: SiteResourceContext; /** Specific account details. */ accountContext?: AccountResourceContext; } /** @oneof */ interface FullNameResourceResourceContextOneOf { /** Specific site details. */ siteContext?: SiteResourceContext; /** Specific account details. */ accountContext?: AccountResourceContext; } /** Site resource context. It indicates that the resource is under a site (can be the site itself or some asset of a site, like a blog post) */ interface SiteResourceContext { /** Site ID. */ metasiteId?: string; } /** Account resource contexts. It indicates that the resource is under the account (can be the account itself or some asset of an account, like a logo or a domain) */ interface AccountResourceContext { /** Account ID. */ accountId?: string; } interface OrganizationResourceContext { } /** * A custom resource. Is used to represent some asset that is not a direct resource context (site or account), but something custom. * For example: payment method, blog post, domain, logo. */ interface Resource { /** The resource id. */ id?: string | null; /** The resource type */ type?: string | null; } interface PolicyCondition { /** The type of the condition */ condition?: ConditionType; } interface ConditionType extends ConditionTypeOfOneOf { /** @deprecated */ simpleCondition?: SimpleCondition; /** A logic combination between several conditions, with an operator between them */ joinedConditions?: JoinedCondition; /** @deprecated */ environmentCondition?: EnvironmentCondition; /** A single condition */ condition?: Condition; } /** @oneof */ interface ConditionTypeOfOneOf { /** @deprecated */ simpleCondition?: SimpleCondition; /** A logic combination between several conditions, with an operator between them */ joinedConditions?: JoinedCondition; /** @deprecated */ environmentCondition?: EnvironmentCondition; /** A single condition */ condition?: Condition; } interface SimpleCondition { attrName?: string; value?: SimpleConditionValue; op?: SimpleConditionOperatorWithLiterals; conditionModelId?: string; } interface SimpleConditionValue extends SimpleConditionValueValueOneOf { attrName?: string; stringValue?: string; boolValue?: boolean; } /** @oneof */ interface SimpleConditionValueValueOneOf { attrName?: string; stringValue?: string; boolValue?: boolean; } declare enum SimpleConditionOperator { UNKNOWN_SIMPLE_OP = "UNKNOWN_SIMPLE_OP", EQUAL = "EQUAL" } /** @enumType */ type SimpleConditionOperatorWithLiterals = SimpleConditionOperator | 'UNKNOWN_SIMPLE_OP' | 'EQUAL'; interface JoinedCondition { /** The operator that should be used when evaluating the condition */ op?: JoinedConditionOperatorWithLiterals; /** The conditions that should be evaluated, and then joined using the operator provided */ conditions?: ConditionType[]; } declare enum JoinedConditionOperator { UNKNOWN_JOIN_OP = "UNKNOWN_JOIN_OP", OR = "OR", AND = "AND" } /** @enumType */ type JoinedConditionOperatorWithLiterals = JoinedConditionOperator | 'UNKNOWN_JOIN_OP' | 'OR' | 'AND'; interface EnvironmentCondition extends EnvironmentConditionConditionOneOf { experimentCondition?: ExperimentCondition; } /** @oneof */ interface EnvironmentConditionConditionOneOf { experimentCondition?: ExperimentCondition; } interface ExperimentCondition { spec?: string; fallbackValue?: string; expectedValue?: string; } interface Condition { /** The unique identifier of the condition model. Indicates which actions the condition is working on */ conditionModelId?: string; /** The operator that should be evaluated */ operator?: ConditionOperator; } interface ConditionOperator extends ConditionOperatorOperatorsOneOf { /** Comparison of equality - will be evaluated to true if the given parties are equal */ equals?: EqualOperator; /** Regex operator - will be evaluated to true if the given value matches the provided regex */ like?: LikeOperator; /** Petri experiment - will be evaluated using petri. */ experiment?: ExperimentOperator; /** Operator that indicates a dependency on another subject being allowed to perform something. */ dependOn?: DependOnOperator; } /** @oneof */ interface ConditionOperatorOperatorsOneOf { /** Comparison of equality - will be evaluated to true if the given parties are equal */ equals?: EqualOperator; /** Regex operator - will be evaluated to true if the given value matches the provided regex */ like?: LikeOperator; /** Petri experiment - will be evaluated using petri. */ experiment?: ExperimentOperator; /** Operator that indicates a dependency on another subject being allowed to perform something. */ dependOn?: DependOnOperator; } interface EqualOperator { /** The attribute which should be compared. The attribute will be first evaluated to a value, and then compared the other side (attribute/value) */ attrName?: string; /** The value to compare to. If the two parties are equal - we will return true. */ value?: ConditionValue; } interface ConditionValue extends ConditionValueValueOneOf { /** 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. */ attrName?: string; /** a value with a string type. Will be compared to the attribute provided, and be true only if they match the operator. */ stringValue?: string; /** a value with a boolean type. Will be compared to the attribute provided, and be true only if they match the operator. */ boolValue?: boolean; } /** @oneof */ interface ConditionValueValueOneOf { /** 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. */ attrName?: string; /** a value with a string type. Will be compared to the attribute provided, and be true only if they match the operator. */ stringValue?: string; /** a value with a boolean type. Will be compared to the attribute provided, and be true only if they match the operator. */ boolValue?: boolean; } interface LikeOperator { /** The attribute which should be compared. The attribute will be first evaluated to a value, and then compared the regex values provided. */ attrName?: string; /** 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 */ values?: string[]; } interface ExperimentOperator { /** The spec to conduct the experiment on. */ spec?: string; /** The value to use if the experiment could not be conducted */ fallbackValue?: string; /** The expected value of the experiment conduction. If it matches the actual value - true will be returned. Otherwise - false. */ expectedValue?: string; } /** Implies that the policy takes affect only if the depend on subject is permitted as well. */ interface DependOnOperator { /** 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 */ dependOnSubject?: Subject; } interface AccountInfo { accountName?: string; accountImage?: string; isTeam?: boolean; } interface ApiPolicy { id?: string; description?: string | null; name?: string | null; isCustom?: boolean; scopes?: string[]; } interface PredefinedRoles { roles?: PredefinedRole[]; } interface PredefinedRole { titleKey?: string; roles?: Role[]; title?: string | null; areaId?: string; } interface Role { id?: string; deprecatedKey?: string; /** @deprecated */ titleKey?: string; /** @deprecated */ descriptionKey?: string; deprecated?: boolean; restrictFromLevel?: string; experiments?: string[]; appDefIds?: string[]; title?: string | null; description?: string | null; isCustom?: boolean; scopes?: string[]; availableResourceTypes?: ResourceTypeWithLiterals[]; availableConditions?: ConditionAttributeTypeWithLiterals[]; limitToEditorTypes?: string[]; } interface ChangeRoleRequest { /** User ID. */ id?: string; /** * Deprecated. Use `policyIds`. * @deprecated */ role?: string; /** Role IDs to be assigned. */ policyIds?: string[]; } interface ChangeRoleResponse { } interface RemoveMemberRequest { /** User ID of the team member to remove. */ userId: string; } interface RemoveMemberResponse { } interface GetUsersRequest { /** The number of items to load */ limit?: number | null; /** number of items to skip in the current sort order */ offset?: number | null; } interface GetUsersResponse { users?: User[]; } interface GetScopesRequest { /** The locale of the request. Defaults to en */ locale?: string | null; } interface GetScopesResponse { scopeAreas?: ScopeArea[]; } interface ScopeArea { title?: string; appDefIds?: string[]; scopes?: PermissionScope[]; restrictFromLevel?: ScopeLevelWithLiterals; } interface PermissionScope { id?: string; title?: string; description?: string; level?: ScopeLevelWithLiterals; experiments?: string[]; dependantScopes?: string[]; restrictFromLevel?: ScopeLevelWithLiterals; deprecated?: boolean | null; /** The visibility of the scope for the caller */ visibility?: VisibilityWithLiterals; /** * @maxSize 20 * @format GUID */ appDefIds?: string[]; /** * List of scope IDs that cannot be selected together with this scope * @maxSize 500 * @maxLength 100 */ preventedScopes?: string[]; } declare enum ScopeLevel { None = "None", SITE = "SITE", ACCOUNT = "ACCOUNT" } /** @enumType */ type ScopeLevelWithLiterals = ScopeLevel | 'None' | 'SITE' | 'ACCOUNT'; declare enum Visibility { /** The scope should be visible to the caller */ VISIBLE = "VISIBLE", /** The scope shouldn't be visible for the caller, because the capability that blocks it is turned on for the caller */ BLOCKED_BY_CAPABILITY = "BLOCKED_BY_CAPABILITY" } /** @enumType */ type VisibilityWithLiterals = Visibility | 'VISIBLE' | 'BLOCKED_BY_CAPABILITY'; interface GetScopesV2Request { /** * The locale of the scope areas names and descriptions. Defaults to English * @format LANGUAGE */ locale?: string | null; /** * Optional: The host platform for filtering scope areas. When not provided, returns scope areas for all platforms. * Valid values: "channels", "enterprise", "studio", "dev-center", "bm-vibe", "bm-headless", "bm-studio", "bm-classic" * @maxLength 50 */ host?: string | null; /** * Optional: Additional app definition IDs to treat as installed apps for filtering purposes * @format GUID * @maxSize 100 */ clientInstalledApps?: string[]; } interface GetScopesV2Response { /** * The filtered scope areas * @maxSize 100 */ scopeAreas?: ScopeAreaV2[]; } interface ScopeAreaV2 { /** * The title of the scope area * @maxLength 500 */ title?: string; /** * The permission scopes within this area * @maxSize 100 */ scopes?: PermissionScopeV2[]; } interface PermissionScopeV2 { /** * The unique identifier for the permission scope * @maxLength 500 */ id?: string; /** * The display title of the permission scope * @maxLength 500 */ title?: string; /** * A description of what this permission scope allows * @maxLength 1000 */ description?: string; /** * List of scope IDs that this scope depends on * @maxSize 500 * @maxLength 100 */ dependantScopes?: string[]; /** The level at which this scope operates (site or account) */ level?: ScopeLevelWithLiterals; /** * List of scope IDs that cannot be selected together with this scope * @maxSize 500 * @maxLength 100 */ preventedScopes?: string[]; } interface GetPeopleRequest { resource?: PeopleResource; peopleType?: PeopleTypeWithLiterals; paging?: Paging; /** The locale of the request. Defaults to en */ locale?: string | null; } interface PeopleResource extends PeopleResourceResourceTypeOneOf { site?: string; folder?: FolderResource; } /** @oneof */ interface PeopleResourceResourceTypeOneOf { site?: string; folder?: FolderResource; } interface FolderResource { folderId?: string; folderFullPath?: string; } declare enum PeopleType { UNDEF_PEOPLE_TYPE = "UNDEF_PEOPLE_TYPE", CONTRIBUTOR = "CONTRIBUTOR", TEAM_MEMBER = "TEAM_MEMBER" } /** @enumType */ type PeopleTypeWithLiterals = PeopleType | 'UNDEF_PEOPLE_TYPE' | 'CONTRIBUTOR' | 'TEAM_MEMBER'; interface GetPeopleResponse { people?: People; } interface People { people?: Person[]; totalPeople?: number; } interface Person extends PersonPersonOneOf { contributor?: Contributor; teamMember?: TeamMember; } /** @oneof */ interface PersonPersonOneOf { contributor?: Contributor; teamMember?: TeamMember; } /** A contributor represents a Wix user with edit or manage access to a site owned by a separate Wix account. Contributors can be assigned roles that determine their level of access to the site and its assets. */ interface Contributor { /** Contributor's metadata, including account ID, name, email, and role assignments. */ metaData?: PersonMetaData; /** Whether the contributor account is a team account. */ isTeam?: boolean | null; /** Date that the contributor joined the site. */ joinedAt?: Date | null; /** Email address that received the invite. */ invitedEmail?: string | null; /** Whether the contributor account is a client account. */ isClient?: boolean | null; /** * Contributor's user ID. * @format GUID * @readonly */ id?: string; /** * A set of capability keys representing the actions that the caller is allowed * to perform on this specific contributor. This field is calculated based on the * identity of the request sender and may differ between callers. * @maxSize 20 * @maxLength 20 */ callerCapabilities?: string[]; } interface PersonMetaData { /** Contributor's account ID. */ id?: string; /** Contributor's full name. */ fullName?: string | null; /** URL for contributor's profile image. */ imageUrl?: string | null; /** Contributor's email address. */ email?: string | null; /** Contributor's role assignments, mapping their access to site assets and their assigned roles. */ assignments?: Assignment[]; } interface TeamMember { metaData?: PersonMetaData; } interface GetTeamV2Response { users?: User[]; totalUsersInAccount?: string; } interface GetTeamInvitesRequest { /** The locale of the request. Defaults to en */ locale?: string | null; } interface GetTeamInvitesResponse { invites?: Invite[]; } interface Invite { /** * @format GUID * @readonly */ id?: string; /** * @format GUID * @readonly */ accountId?: string; email?: string; status?: InviteStatusWithLiterals; acceptLink?: string; dateCreated?: Date | null; dateUpdated?: Date | null; assignments?: ApiInviteAssignment[]; /** Invite expiration date */ expirationDate?: Date | null; } interface ApiInviteAssignment { policy?: AssignedPolicy; restrictions?: Restriction; } interface GetPoliciesRequest { /** The locale of the request. Defaults to en */ locale?: string | null; /** Areas filter to include only roles from areas that pass this filter. When not provided, roles from all areas will be returned */ areasFilter?: AreasFilter; /** Role level filter to include only roles that are not restricted from the requested resource level (site/account). When set to ALL, all levels are returned */ roleLevel?: RoleLevelWithLiterals; } interface AreasFilter { /** A list of role area ids, to filter only roles belonging to these areas */ areaIds?: string[]; } declare enum RoleLevel { ALL = "ALL", SITE_LEVEL = "SITE_LEVEL", ACCOUNT_LEVEL = "ACCOUNT_LEVEL" } /** @enumType */ type RoleLevelWithLiterals = RoleLevel | 'ALL' | 'SITE_LEVEL' | 'ACCOUNT_LEVEL'; interface GetPoliciesResponse { policies?: PredefinedRoles; } interface SearchTeamRequest { /** * Free text to match in searchable fields. * * For example, search for specific values in * `name` or `email`. */ query?: string | null; /** Field name and order to sort by. */ orderBy?: Ordering[]; /** * Filter object for narrowing search results. * * For example, to return only users with a specific role: `{"filter": {"roleId": "6600344420111308827"}}` * * See [API Query Language](https://dev.wix.com/docs/rest/articles/get-started/api-query-language) * for more information. * * Supported values: `inviteType` and `roleId`. */ filter?: Record | null; /** * Group data into categories (facets) and return the total count for each category. * * For example, use `facets` to aggregate search results by team member, invite status, or role. */ facets?: FacetTypeWithLiterals[]; /** Paging options. */ paging?: Paging; } interface Ordering { /** Field to sort by. */ fieldName?: OrderFieldWithLiterals; /** Sort order. */ direction?: DirectionWithLiterals; } declare enum OrderField { /** Team member name. */ Name = "Name", /** Date team member joined the account. */ JoinedAt = "JoinedAt" } /** @enumType */ type OrderFieldWithLiterals = OrderField | 'Name' | 'JoinedAt'; declare enum Direction { /** Ascending. */ ASC = "ASC", /** Descending. */ DESC = "DESC" } /** @enumType */ type DirectionWithLiterals = Direction | 'ASC' | 'DESC'; declare enum FacetType { /** Total team members with each role. */ Roles = "Roles", /** * Total team members by [invite](https://dev.wix.com/docs/rest/account-level/user-management/accounts/account-invites/account-invite-object). * `status`. */ InviteStatus = "InviteStatus", /** Total team members. */ Users = "Users" } /** @enumType */ type FacetTypeWithLiterals = FacetType | 'Roles' | 'InviteStatus' | 'Users'; interface SearchTeamResponse { /** Retrieved facets as specified in the request. */ facets?: Facet[]; /** * Retrieved team members and sent invites that match the search criteria specified in the request. * * Each file includes all standard `user` and `invite` information. */ teamMembers?: TeamMemberV3[]; } interface Facet { /** Type of facet. */ facetType?: FacetTypeWithLiterals; /** Values and the amount of each. Values with a count of `0` aren't returned. */ values?: FacetValue[]; } interface FacetValue { /** Supported values: `Roles`, `InviteStatus`, `Users`. */ value?: string; /** Number of existing items for the `value`. */ count?: number; } interface TeamMemberV3 extends TeamMemberV3MembersOneOf { /** Existing team member data. */ user?: UserV3; /** Invited team member data. */ invite?: InviteV3; } /** @oneof */ interface TeamMemberV3MembersOneOf { /** Existing team member data. */ user?: UserV3; /** Invited team member data. */ invite?: InviteV3; } interface UserV3 { /** User ID. */ id?: string; /** * User's email address. * @format EMAIL */ email?: string | null; /** User's name, when provided. */ name?: Name; /** URL to user's profile image, when provided. */ profileImage?: string | null; /** Date the user joined the team. */ joinedTeamAt?: Date | null; /** Mapping of the user's access to an asset and their assigned role. */ assignments?: AssignmentV3[]; } interface AssignmentV3 { /** Role assigned to the user. To retrieve all available roles, call Get Roles Info. */ policyId?: string | null; /** * Unique ID for this specific assignment. * @readonly */ assignmentId?: string | null; /** The asset where a user is assigned access in an assignment. When empty, the role covers all assets, with no restrictions to specific sites or folders. */ restrictions?: Restriction; /** Identity assigned to the asset in an assignment, referred to as subject. Supported subjects include user IDs, account IDs, and app IDs. */ subject?: AssignedSubject; } interface AssignedSubject { /** * Identity ID. * @format GUID * @readonly */ id?: string; /** Identity type. */ subjectType?: SubjectTypeWithLiterals; } interface InviteV3 { /** * Invite ID. * @format GUID * @readonly */ id?: string; /** * Invitee's email address. * @format EMAIL */ email?: string | null; /** Invite status. */ status?: InviteStatusWithLiterals; /** URL of direct link to accept the invite. */ acceptLink?: string | null; /** Date the invite was created. */ dateCreated?: Date | null; /** Date the invite was last updated. */ dateUpdated?: Date | null; /** A list of assignments that will be applied to the invitees when they accept the invite. */ assignments?: InviteAssignmentV3[]; /** Invite expiration date. */ expirationDate?: Date | null; } interface InviteAssignmentV3 { /** Role ID that will be assigned once the invite is accepted. */ policyId?: string | null; /** Assets where the user will be assigned access. When empty, the role covers all assets, with no restrictions to specific sites or folders. */ restrictions?: Restriction; } interface GetRolesRequest { /** The locale of the predefined roles names and descriptions. Defaults to English */ locale?: string | null; } interface GetRolesResponse { /** The predefined roles (by areas) */ predefinedRolesAreas?: PredefinedRolesArea[]; /** The custom roles */ customRoles?: CustomRole[]; } interface PredefinedRolesArea { /** The id of the area (e.g "Blog") */ areaId?: string; /** The translated area title, according to the request locale, or the original title if translation failed */ title?: string; /** The predefined roles belonging to this area */ roles?: PredefinedRoleV2[]; } interface PredefinedRoleV2 { /** The policy id of this role */ id?: string; /** The title of this role, translated according to the request locale, or the original title if translation failed */ title?: string; /** The description of this role, translated according to the request locale, or the original description if translation failed */ description?: string; /** The permission-scopes this role's policy contains */ scopes?: string[]; /** Indicates if the role is deprecated (shouldn't be granted, and only exists for backward compatability) */ deprecated?: boolean; /** Indicates if this role should be restricted from assignments of a specific resource type (if RoleLevelRestriction = None, there is no restriction) */ restrictFromLevel?: RoleLevelRestrictionWithLiterals; /** Experiments that should be open for this role to be visible */ experiments?: string[]; /** Applications that should be installed for this role to be visible */ appDefIds?: string[]; /** Editor types this role should be limited to (if empty, available in all editors) */ limitToEditorTypes?: EditorTypeWithLiterals[]; /** The visibility of the role */ visibility?: RoleVisibilityWithLiterals; } declare enum RoleLevelRestriction { NoRestriction = "NoRestriction", Site = "Site", Account = "Account" } /** @enumType */ type RoleLevelRestrictionWithLiterals = RoleLevelRestriction | 'NoRestriction' | 'Site' | 'Account'; declare enum EditorType { UNINITIALIZED = "UNINITIALIZED", EDITORX = "EDITORX", BLOCKS = "BLOCKS", STUDIO = "STUDIO" } /** @enumType */ type EditorTypeWithLiterals = EditorType | 'UNINITIALIZED' | 'EDITORX' | 'BLOCKS' | 'STUDIO'; declare enum RoleVisibility { /** the role should be visible to the caller */ Visible = "Visible", /** the role should be disabled for the caller, because it contains permissions the caller wasn't granted on the call context (site/account) */ Disabled_Dependency = "Disabled_Dependency", /** the role should be disabled for the caller, because the role's capability is disabled for the caller */ Disabled_Capability = "Disabled_Capability" } /** @enumType */ type RoleVisibilityWithLiterals = RoleVisibility | 'Visible' | 'Disabled_Dependency' | 'Disabled_Capability'; interface CustomRole { /** The policy this role grants */ policy?: ApiPolicy; /** The visibility of the role */ visibility?: RoleVisibilityWithLiterals; /** Whether this role is assigned to a subject */ assigned?: boolean | null; } interface GetRolesInfoRequest { /** Language of predefined roles names and descriptions to return, in ISO 639 format. Default: `en`. */ locale?: string | null; /** Roles to return. */ filter?: RolesInfoFilter; } interface RolesInfoFilter { /** Role level to return. Default: ALL. */ roleLevel?: RoleLevelWithLiterals; /** Filter for editor-specific roles. Default: ALL. */ editorTypes?: EditorTypeWithLiterals[]; } interface GetRolesInfoResponse { /** Predefined roles. */ predefinedRoles?: RoleInfo[]; /** Custom roles. */ customRoles?: RoleInfo[]; } interface RoleInfo { /** Role ID. */ id?: string; /** Role title, translated according to the request locale. If translation fails, the original title is returned. */ title?: string; /** Role description, translated according to the request locale. If translation fails, the original description is returned. */ description?: string; /** Whether this role is restricted from accessing a specific resource type. Default: `NoRestriction`. */ restrictFromLevel?: RoleLevelRestrictionWithLiterals; } interface CreateCustomRoleRequest { /** The custom role to create */ role?: Policy; } interface Policy { /** @readonly */ id?: string | null; /** @maxLength 50 */ name?: string | null; /** @maxLength 500 */ description?: string | null; /** @readonly */ status?: string; policyType?: PolicyTypeWithLiterals; statements?: PolicyStatement[]; } declare enum PolicyType { UNKNOWN_STATUS = "UNKNOWN_STATUS", PREDEFINED = "PREDEFINED", CUSTOM = "CUSTOM", INLINE_CUSTOM = "INLINE_CUSTOM" } /** @enumType */ type PolicyTypeWithLiterals = PolicyType | 'UNKNOWN_STATUS' | 'PREDEFINED' | 'CUSTOM' | 'INLINE_CUSTOM'; interface PolicyStatement { /** @readonly */ id?: string | null; permissions?: string[]; scopes?: string[]; effect?: EffectWithLiterals; condition?: PolicyCondition; } declare enum Effect { UNKNOWN_EFFECT = "UNKNOWN_EFFECT", ALLOW = "ALLOW", DENY = "DENY" } /** @enumType */ type EffectWithLiterals = Effect | 'UNKNOWN_EFFECT' | 'ALLOW' | 'DENY'; interface CreateCustomRoleResponse { /** The newly created custom role */ roleCreated?: Policy; } interface ChangeRoleV2Request { /** * ID of team member being affected. * @format GUID */ userId: string; /** New assignments, including roles, to apply to the team member in this account. To retrieve all available roles, call Get Roles Info. */ roles: AssignmentV3[]; /** Existing assignment IDs to remove. To retrieve all existing assignment IDs for a team member, call Search Team. */ assignmentIdsToReplace: string[]; } interface ChangeRoleV2Response { /** New roles assigned to the given team member. */ roles?: AssignmentV3[]; } interface UpdateTeamMemberAssignmentsRequest { /** * ID of team member being affected. * @format GUID */ userId: string; /** * New assignments to apply to the team member in this account. * @maxSize 50 */ newAssignments: AssignmentV3[]; /** * Existing assignment IDs to remove. To retrieve all existing assignment IDs for a team member, call Search Team. * @format GUID * @maxSize 50 */ assignmentIdsToRemove: string[]; } interface UpdateTeamMemberAssignmentsResponse { /** The new assignments, assigned to the given team member. */ assignments?: AssignmentV3[]; } interface GetSubjectsAssignmentsRequest { /** The locale of the request. Defaults to en */ locale?: string | null; /** list of subjects */ subjects?: Subject[]; } interface GetSubjectsAssignmentsResponse { /** list of subjects with assignments */ subjectsAssignments?: SubjectAssignments[]; } interface SubjectAssignments { subject?: Subject; assignments?: Assignment[]; } interface GetScopesByRoleRequest { /** * The role ID to filter scope areas by * @maxLength 50 */ roleId?: string; /** * The locale of the scope. Defaults to English * @format LANGUAGE */ locale?: string | null; } interface GetScopesByRoleResponse { /** * The scopes included in this role * @maxSize 100 */ scopes?: PermissionScopeV2[]; } interface GetRolesV2Request { /** * The locale of the predefined roles names and descriptions. Defaults to English * @format LANGUAGE */ locale?: string | null; /** * Optional: The host platform to filter roles for. When not provided, returns roles for all platforms. * Valid values: "channels", "enterprise", "studio", "dev-center", "bm-vibe", "bm-headless", "bm-studio", "bm-classic" * @maxLength 50 */ host?: string | null; /** * Optional: Additional app definition IDs to treat as installed apps for filtering purposes * @format GUID * @maxSize 100 */ clientInstalledApps?: string[]; /** When true, skips subject permissions, experiments, app, and capability filtering. Only host filtering is applied. */ skipFiltering?: boolean; } interface GetRolesV2Response { /** The predefined roles (by areas) with simplified structure */ predefinedRolesAreas?: PredefinedRolesAreaV2[]; /** The custom roles with simplified structure */ customRoles?: CustomRoleV2[]; } interface PredefinedRolesAreaV2 { /** * Area ID * @maxLength 50 */ areaId?: string; /** * Area title * @maxLength 50 */ title?: string; /** * Roles in this area * @maxSize 100 */ roles?: RoleInfoV2[]; /** * Host platforms this area applies to * @maxSize 10 * @maxLength 50 */ hosts?: string[]; } interface RoleInfoV2 { /** * Role ID * @maxLength 50 */ id?: string; /** * Role title * @maxLength 500 */ title?: string; /** * Role description * @maxLength 1000 */ description?: string; /** * List of dependent role IDs * @maxSize 50 * @maxLength 50 */ dependentRoles?: string[]; } interface CustomRoleV2 { /** * Role ID * @maxLength 50 */ id?: string; /** * Role title * @maxLength 500 */ title?: string; /** * Role description * @maxLength 1000 */ description?: string; /** * List of permission scopes * @maxSize 100 * @maxLength 100 */ scopes?: string[]; /** Whether this role is assigned to the current user */ assigned?: boolean; } /** Request for back-office GetRoles */ interface GetRolesBackofficeRequest { /** * The locale of the predefined roles names and descriptions. Defaults to English * @format LANGUAGE */ locale?: string | null; } /** Response for back-office GetRoles */ interface GetRolesBackofficeResponse { /** * All predefined role areas * @maxSize 100 */ areas?: PredefinedRolesAreaV2[]; } /** Request for back-office GetScopes */ interface GetScopesBackofficeRequest { /** * The locale of the scope areas names and descriptions. Defaults to English * @format LANGUAGE */ locale?: string | null; } /** Response for back-office GetScopes */ interface GetScopesBackofficeResponse { /** * All predefined scope areas * @maxSize 100 */ areas?: ScopeAreaV2[]; } type __PublicMethodMetaInfo = { getUrl: (context: any) => string; httpMethod: K; path: string; pathParams: M; __requestType: T; __originalRequestType: S; __responseType: Q; __originalResponseType: R; }; declare function removeMember(): __PublicMethodMetaInfo<'POST', {}, RemoveMemberRequest$1, RemoveMemberRequest, RemoveMemberResponse$1, RemoveMemberResponse>; declare function searchTeam(): __PublicMethodMetaInfo<'POST', {}, SearchTeamRequest$1, SearchTeamRequest, SearchTeamResponse$1, SearchTeamResponse>; declare function getRolesInfo(): __PublicMethodMetaInfo<'GET', {}, GetRolesInfoRequest$1, GetRolesInfoRequest, GetRolesInfoResponse$1, GetRolesInfoResponse>; declare function changeRoleV2(): __PublicMethodMetaInfo<'PATCH', {}, ChangeRoleV2Request$1, ChangeRoleV2Request, ChangeRoleV2Response$1, ChangeRoleV2Response>; declare function updateTeamMemberAssignments(): __PublicMethodMetaInfo<'PATCH', {}, UpdateTeamMemberAssignmentsRequest$1, UpdateTeamMemberAssignmentsRequest, UpdateTeamMemberAssignmentsResponse$1, UpdateTeamMemberAssignmentsResponse>; export { type AccountInfo as AccountInfoOriginal, type AccountInvite as AccountInviteOriginal, type AccountResourceContext as AccountResourceContextOriginal, type ApiCondition as ApiConditionOriginal, type ApiInviteAssignment as ApiInviteAssignmentOriginal, type ApiPolicy as ApiPolicyOriginal, type ApiResource as ApiResourceOriginal, type AreasFilter as AreasFilterOriginal, type AssignedPolicy as AssignedPolicyOriginal, type AssignedSubject as AssignedSubjectOriginal, type Assignment as AssignmentOriginal, type AssignmentV3 as AssignmentV3Original, type ChangeRoleRequest as ChangeRoleRequestOriginal, type ChangeRoleResponse as ChangeRoleResponseOriginal, type ChangeRoleV2Request as ChangeRoleV2RequestOriginal, type ChangeRoleV2Response as ChangeRoleV2ResponseOriginal, type CompanionResource as CompanionResourceOriginal, ConditionAttributeType as ConditionAttributeTypeOriginal, type ConditionAttributeTypeWithLiterals as ConditionAttributeTypeWithLiteralsOriginal, type ConditionOperatorOperatorsOneOf as ConditionOperatorOperatorsOneOfOriginal, type ConditionOperator as ConditionOperatorOriginal, type Condition as ConditionOriginal, type ConditionTypeOfOneOf as ConditionTypeOfOneOfOriginal, type ConditionType as ConditionTypeOriginal, type ConditionValue as ConditionValueOriginal, type ConditionValueValueOneOf as ConditionValueValueOneOfOriginal, type Conditions as ConditionsOriginal, type Contributor as ContributorOriginal, type CreateCustomRoleRequest as CreateCustomRoleRequestOriginal, type CreateCustomRoleResponse as CreateCustomRoleResponseOriginal, type CustomRole as CustomRoleOriginal, type CustomRoleV2 as CustomRoleV2Original, type DependOnOperator as DependOnOperatorOriginal, Direction as DirectionOriginal, type DirectionWithLiterals as DirectionWithLiteralsOriginal, EditorType as EditorTypeOriginal, type EditorTypeWithLiterals as EditorTypeWithLiteralsOriginal, Effect as EffectOriginal, type EffectWithLiterals as EffectWithLiteralsOriginal, type EnvironmentConditionConditionOneOf as EnvironmentConditionConditionOneOfOriginal, type EnvironmentCondition as EnvironmentConditionOriginal, type EqualOperator as EqualOperatorOriginal, type ExperimentCondition as ExperimentConditionOriginal, type ExperimentOperator as ExperimentOperatorOriginal, type Facet as FacetOriginal, FacetType as FacetTypeOriginal, type FacetTypeWithLiterals as FacetTypeWithLiteralsOriginal, type FacetValue as FacetValueOriginal, type FolderResource as FolderResourceOriginal, type FullNameResource as FullNameResourceOriginal, type FullNameResourceResourceContextOneOf as FullNameResourceResourceContextOneOfOriginal, type GetPeopleRequest as GetPeopleRequestOriginal, type GetPeopleResponse as GetPeopleResponseOriginal, type GetPoliciesRequest as GetPoliciesRequestOriginal, type GetPoliciesResponse as GetPoliciesResponseOriginal, type GetRolesBackofficeRequest as GetRolesBackofficeRequestOriginal, type GetRolesBackofficeResponse as GetRolesBackofficeResponseOriginal, type GetRolesInfoRequest as GetRolesInfoRequestOriginal, type GetRolesInfoResponse as GetRolesInfoResponseOriginal, type GetRolesRequest as GetRolesRequestOriginal, type GetRolesResponse as GetRolesResponseOriginal, type GetRolesV2Request as GetRolesV2RequestOriginal, type GetRolesV2Response as GetRolesV2ResponseOriginal, type GetScopesBackofficeRequest as GetScopesBackofficeRequestOriginal, type GetScopesBackofficeResponse as GetScopesBackofficeResponseOriginal, type GetScopesByRoleRequest as GetScopesByRoleRequestOriginal, type GetScopesByRoleResponse as GetScopesByRoleResponseOriginal, type GetScopesRequest as GetScopesRequestOriginal, type GetScopesResponse as GetScopesResponseOriginal, type GetScopesV2Request as GetScopesV2RequestOriginal, type GetScopesV2Response as GetScopesV2ResponseOriginal, type GetSubjectsAssignmentsRequest as GetSubjectsAssignmentsRequestOriginal, type GetSubjectsAssignmentsResponse as GetSubjectsAssignmentsResponseOriginal, type GetTeamInvitesRequest as GetTeamInvitesRequestOriginal, type GetTeamInvitesResponse as GetTeamInvitesResponseOriginal, type GetTeamRequest as GetTeamRequestOriginal, type GetTeamResponse as GetTeamResponseOriginal, type GetTeamV2Response as GetTeamV2ResponseOriginal, type GetUsersRequest as GetUsersRequestOriginal, type GetUsersResponse as GetUsersResponseOriginal, type InviteAssignment as InviteAssignmentOriginal, type InviteAssignmentV3 as InviteAssignmentV3Original, type Invite as InviteOriginal, type InviteResourceAssignment as InviteResourceAssignmentOriginal, InviteStatus as InviteStatusOriginal, type InviteStatusWithLiterals as InviteStatusWithLiteralsOriginal, type InviteV3 as InviteV3Original, JoinedConditionOperator as JoinedConditionOperatorOriginal, type JoinedConditionOperatorWithLiterals as JoinedConditionOperatorWithLiteralsOriginal, type JoinedCondition as JoinedConditionOriginal, type LikeOperator as LikeOperatorOriginal, type LocationsRestriction as LocationsRestrictionOriginal, type Name as NameOriginal, OrderField as OrderFieldOriginal, type OrderFieldWithLiterals as OrderFieldWithLiteralsOriginal, type Ordering as OrderingOriginal, type OrganizationResourceContext as OrganizationResourceContextOriginal, type Paging as PagingOriginal, type People as PeopleOriginal, type PeopleResource as PeopleResourceOriginal, type PeopleResourceResourceTypeOneOf as PeopleResourceResourceTypeOneOfOriginal, PeopleType as PeopleTypeOriginal, type PeopleTypeWithLiterals as PeopleTypeWithLiteralsOriginal, type PermissionScope as PermissionScopeOriginal, type PermissionScopeV2 as PermissionScopeV2Original, type PersonMetaData as PersonMetaDataOriginal, type Person as PersonOriginal, type PersonPersonOneOf as PersonPersonOneOfOriginal, type PolicyCondition as PolicyConditionOriginal, type Policy as PolicyOriginal, type PolicyStatement as PolicyStatementOriginal, PolicyType as PolicyTypeOriginal, type PolicyTypeWithLiterals as PolicyTypeWithLiteralsOriginal, type PredefinedRole as PredefinedRoleOriginal, type PredefinedRoleV2 as PredefinedRoleV2Original, type PredefinedRolesArea as PredefinedRolesAreaOriginal, type PredefinedRolesAreaV2 as PredefinedRolesAreaV2Original, type PredefinedRoles as PredefinedRolesOriginal, type RemoveMemberRequest as RemoveMemberRequestOriginal, type RemoveMemberResponse as RemoveMemberResponseOriginal, type Resource as ResourceOriginal, ResourceType as ResourceTypeOriginal, type ResourceTypeWithLiterals as ResourceTypeWithLiteralsOriginal, type Restriction as RestrictionOriginal, type RestrictionRestrictionsOneOf as RestrictionRestrictionsOneOfOriginal, type RoleInfo as RoleInfoOriginal, type RoleInfoV2 as RoleInfoV2Original, RoleLevel as RoleLevelOriginal, RoleLevelRestriction as RoleLevelRestrictionOriginal, type RoleLevelRestrictionWithLiterals as RoleLevelRestrictionWithLiteralsOriginal, type RoleLevelWithLiterals as RoleLevelWithLiteralsOriginal, type Role as RoleOriginal, RoleVisibility as RoleVisibilityOriginal, type RoleVisibilityWithLiterals as RoleVisibilityWithLiteralsOriginal, type RolesInfoFilter as RolesInfoFilterOriginal, type ScopeArea as ScopeAreaOriginal, type ScopeAreaV2 as ScopeAreaV2Original, ScopeLevel as ScopeLevelOriginal, type ScopeLevelWithLiterals as ScopeLevelWithLiteralsOriginal, type SearchTeamRequest as SearchTeamRequestOriginal, type SearchTeamResponse as SearchTeamResponseOriginal, SimpleConditionOperator as SimpleConditionOperatorOriginal, type SimpleConditionOperatorWithLiterals as SimpleConditionOperatorWithLiteralsOriginal, type SimpleCondition as SimpleConditionOriginal, type SimpleConditionValue as SimpleConditionValueOriginal, type SimpleConditionValueValueOneOf as SimpleConditionValueValueOneOfOriginal, type SiteResourceContext as SiteResourceContextOriginal, type SiteRestriction as SiteRestrictionOriginal, type SubjectAssignments as SubjectAssignmentsOriginal, type SubjectContext as SubjectContextOriginal, SubjectContextType as SubjectContextTypeOriginal, type SubjectContextTypeWithLiterals as SubjectContextTypeWithLiteralsOriginal, type Subject as SubjectOriginal, SubjectType as SubjectTypeOriginal, type SubjectTypeWithLiterals as SubjectTypeWithLiteralsOriginal, type TeamMember as TeamMemberOriginal, type TeamMemberV3MembersOneOf as TeamMemberV3MembersOneOfOriginal, type TeamMemberV3 as TeamMemberV3Original, type UpdateTeamMemberAssignmentsRequest as UpdateTeamMemberAssignmentsRequestOriginal, type UpdateTeamMemberAssignmentsResponse as UpdateTeamMemberAssignmentsResponseOriginal, type User as UserOriginal, type UserV3 as UserV3Original, Visibility as VisibilityOriginal, type VisibilityWithLiterals as VisibilityWithLiteralsOriginal, type __PublicMethodMetaInfo, changeRoleV2, getRolesInfo, removeMember, searchTeam, updateTeamMemberAssignments };