import { z } from "zod"; import type { AuthStrategy } from "../../EditorConfig"; declare const SimpleRole: z.ZodEnum<["SuperUser", "Owner", "Administrator", "Manager", "Writer", "Readonly"]>; export type SimpleRole = z.infer; export declare function isAdminRole(role: SimpleRole): boolean; export declare function getRoleLabel(role: SimpleRole): string; declare const RolesPerTeamSpace: z.ZodRecord>; rolesPerUser: z.ZodRecord>; }, "strip", z.ZodTypeAny, { rolesPerLocale: Record; }, { rolesPerLocale: Record; }>>; }, "strip", z.ZodTypeAny, { rolesPerLocale: Record; rolesPerUser: Record; }>; }, { rolesPerLocale: Record; rolesPerUser: Record; }>; }>>; export type RolesPerTeamSpace = z.infer; declare const GetRolesResponse: z.ZodObject<{ repository: z.ZodOptional>; }, "strip", z.ZodTypeAny, { rolesPerUser: Record; }, { rolesPerUser: Record; }>>; locale: z.ZodOptional>; }, "strip", z.ZodTypeAny, { rolesPerLocale: Record; }, { rolesPerLocale: Record; }>>; }, "strip", z.ZodTypeAny, { rolesPerUser: Record; }>; }, { rolesPerUser: Record; }>; }>>; teamSpace: z.ZodOptional>>; rolesPerUser: z.ZodOptional>; }, "strip", z.ZodTypeAny, { rolesPerLocale: Record; }, { rolesPerLocale: Record; }>>>; rolesPerTeamSpace: z.ZodOptional>; rolesPerUser: z.ZodRecord>; }, "strip", z.ZodTypeAny, { rolesPerLocale: Record; }, { rolesPerLocale: Record; }>>; }, "strip", z.ZodTypeAny, { rolesPerLocale: Record; rolesPerUser: Record; }>; }, { rolesPerLocale: Record; rolesPerUser: Record; }>; }>>>; }, "strip", z.ZodTypeAny, { rolesPerLocale?: Record | undefined; rolesPerUser?: Record; }> | undefined; rolesPerTeamSpace?: Record; rolesPerUser: Record; }>; }> | undefined; }, { rolesPerLocale?: Record | undefined; rolesPerUser?: Record; }> | undefined; rolesPerTeamSpace?: Record; rolesPerUser: Record; }>; }> | undefined; }>>; }, "strip", z.ZodTypeAny, { repository?: { rolesPerUser: Record; } | undefined; locale?: { rolesPerUser: Record; }>; } | undefined; teamSpace?: { rolesPerLocale?: Record | undefined; rolesPerUser?: Record; }> | undefined; rolesPerTeamSpace?: Record; rolesPerUser: Record; }>; }> | undefined; } | undefined; }, { repository?: { rolesPerUser: Record; } | undefined; locale?: { rolesPerUser: Record; }>; } | undefined; teamSpace?: { rolesPerLocale?: Record | undefined; rolesPerUser?: Record; }> | undefined; rolesPerTeamSpace?: Record; rolesPerUser: Record; }>; }> | undefined; } | undefined; }>; export type GetRolesResponse = z.infer; export type Scope = "repository" | "locale" | "teamSpace"; interface GetRolesArgs { baseUrl: URL; repository: string; authStrategy: AuthStrategy; scopes?: Scope[]; userIds?: string[]; localeIds?: string[]; teamSpaceIds?: string[]; fetchEnabled: boolean; } export declare function getRoles(args: GetRolesArgs): Promise; export declare function getRolesOptions(args: GetRolesArgs): import("@tanstack/react-query/build/legacy/types").UseQueryOptions<{ repository?: { rolesPerUser: Record; } | undefined; locale?: { rolesPerUser: Record; }>; } | undefined; teamSpace?: { rolesPerLocale?: Record | undefined; rolesPerUser?: Record; }> | undefined; rolesPerTeamSpace?: Record; rolesPerUser: Record; }>; }> | undefined; } | undefined; }, Error, { repository?: { rolesPerUser: Record; } | undefined; locale?: { rolesPerUser: Record; }>; } | undefined; teamSpace?: { rolesPerLocale?: Record | undefined; rolesPerUser?: Record; }> | undefined; rolesPerTeamSpace?: Record; rolesPerUser: Record; }>; }> | undefined; } | undefined; }, (string | GetRolesArgs)[]> & { initialData?: import("@tanstack/query-core/build/legacy/hydration-DTVzC0E7").L<{ repository?: { rolesPerUser: Record; } | undefined; locale?: { rolesPerUser: Record; }>; } | undefined; teamSpace?: { rolesPerLocale?: Record | undefined; rolesPerUser?: Record; }> | undefined; rolesPerTeamSpace?: Record; rolesPerUser: Record; }>; }> | undefined; } | undefined; }> | undefined; } & { queryKey: import("@tanstack/query-core/build/legacy/hydration-DTVzC0E7").E<(string | GetRolesArgs)[], { repository?: { rolesPerUser: Record; } | undefined; locale?: { rolesPerUser: Record; }>; } | undefined; teamSpace?: { rolesPerLocale?: Record | undefined; rolesPerUser?: Record; }> | undefined; rolesPerTeamSpace?: Record; rolesPerUser: Record; }>; }> | undefined; } | undefined; }>; }; export type UpdateContributorRole = "Manager" | "Writer" | "Readonly"; export type UpdateRolesPerLocale = Record | false; type UpdateRolesPerUser = Record; export type UpdateTeamSpaceRoles = { rolesPerLocale?: UpdateRolesPerLocale; rolesPerUser?: UpdateRolesPerUser; } | undefined; type UpdateRolesPerTeamSpace = Record; type UpdateRepositoryRole = "Administrator" | "Manager" | "Writer" | "Readonly"; export type UpdateRolesBody = { repository?: { rolesPerUser?: Record; }; locale?: { rolesPerUser?: UpdateRolesPerUser; }; teamSpace?: { rolesPerLocale?: UpdateRolesPerLocale; rolesPerUser?: UpdateRolesPerUser; rolesPerTeamSpace?: UpdateRolesPerTeamSpace; }; }; interface UpdateRolesArgs { baseUrl: URL; repository: string; authStrategy: AuthStrategy; payload: UpdateRolesBody; } export declare function updateRoles(args: UpdateRolesArgs): Promise; export declare function useInvalidateRoles(): () => Promise; export declare const TeamSpace: z.ZodObject<{ id: z.ZodString; name: z.ZodString; customTypes: z.ZodArray; }, "strip", z.ZodTypeAny, { id: string; name: string; customTypes: string[]; }, { id: string; name: string; customTypes: string[]; }>; export type TeamSpace = z.infer; declare const TeamSpaceUpsert: z.ZodObject<{ name: z.ZodString; customTypes: z.ZodArray; }, "strip", z.ZodTypeAny, { name: string; customTypes: string[]; }, { name: string; customTypes: string[]; }>; export type TeamSpaceUpsert = z.infer; declare const TeamSpacesResponse: z.ZodObject<{ results: z.ZodArray; }, "strip", z.ZodTypeAny, { id: string; name: string; customTypes: string[]; }, { id: string; name: string; customTypes: string[]; }>, "many">; }, "strip", z.ZodTypeAny, { results: { id: string; name: string; customTypes: string[]; }[]; }, { results: { id: string; name: string; customTypes: string[]; }[]; }>; export type TeamSpacesResponse = z.infer; interface GetTeamSpacesArgs { baseUrl: URL; repository: string; authStrategy: AuthStrategy; } export declare function getTeamSpaces(args: GetTeamSpacesArgs): Promise; export declare function getTeamSpacesOptions(args: GetTeamSpacesArgs): import("@tanstack/react-query/build/legacy/types").UseQueryOptions<{ results: { id: string; name: string; customTypes: string[]; }[]; }, Error, { id: string; name: string; customTypes: string[]; }[], (string | GetTeamSpacesArgs)[]> & { initialData?: import("@tanstack/query-core/build/legacy/hydration-DTVzC0E7").L<{ results: { id: string; name: string; customTypes: string[]; }[]; }> | undefined; } & { queryKey: import("@tanstack/query-core/build/legacy/hydration-DTVzC0E7").E<(string | GetTeamSpacesArgs)[], { results: { id: string; name: string; customTypes: string[]; }[]; }>; }; export declare function useInvalidateTeamSpaces(): () => Promise; interface CreateTeamSpaceArgs { baseUrl: URL; repository: string; authStrategy: AuthStrategy; payload: TeamSpaceUpsert; } export declare function createTeamSpace(args: CreateTeamSpaceArgs): Promise; interface UpdateTeamSpaceArgs { baseUrl: URL; repository: string; authStrategy: AuthStrategy; payload: TeamSpaceUpsert; teamSpaceId: string; } export declare function updateTeamSpace(args: UpdateTeamSpaceArgs): Promise; interface DeleteTeamSpaceArgs { baseUrl: URL; repository: string; authStrategy: AuthStrategy; teamSpaceId: string; } export declare function deleteTeamSpace(args: DeleteTeamSpaceArgs): Promise; export {};