import type { RocketChatRecordDeleted, IRole, IUserInRole } from '@rocket.chat/core-typings'; import type { PaginatedRequest } from '../helpers/PaginatedRequest'; type RoleDeleteProps = { roleId: IRole['_id']; }; export declare const isRoleDeleteProps: import("ajv").ValidateFunction; type RoleAddUserToRoleProps = { username: string; roleId?: string; roleName?: string; roomId?: string; }; export declare const isRoleAddUserToRoleProps: import("ajv").ValidateFunction; type RoleRemoveUserFromRoleProps = { username: string; roleId?: string; roleName?: string; roomId?: string; scope?: string; }; export declare const isRoleRemoveUserFromRoleProps: import("ajv").ValidateFunction; type RolesGetUsersInRoleProps = PaginatedRequest<{ roomId?: string; role: string; }>; export declare const isRolesGetUsersInRoleProps: import("ajv").ValidateFunction; type RoleSyncProps = { updatedSince?: string; }; export type RolesEndpoints = { '/v1/roles.list': { GET: () => { roles: IRole[]; }; }; '/v1/roles.sync': { GET: (params: RoleSyncProps) => { roles: { update: IRole[]; remove: RocketChatRecordDeleted[]; }; }; }; '/v1/roles.addUserToRole': { POST: (params: RoleAddUserToRoleProps) => { role: IRole; }; }; '/v1/roles.getUsersInRole': { GET: (params: RolesGetUsersInRoleProps) => { users: IUserInRole[]; total: number; }; }; '/v1/roles.delete': { POST: (prop: RoleDeleteProps) => void; }; '/v1/roles.removeUserFromRole': { POST: (props: RoleRemoveUserFromRoleProps) => { role: IRole; }; }; }; export {}; //# sourceMappingURL=roles.d.ts.map