// Code generated by protoc-gen-ts_proto. DO NOT EDIT. // versions: // protoc-gen-ts_proto v2.11.8 // protoc v4.25.9 // source: admin/admin-account.proto /* eslint-disable */ import type { Metadata } from "@grpc/grpc-js"; import { GrpcMethod, GrpcStreamMethod } from "@nestjs/microservices"; import { Observable } from "rxjs"; export const protobufPackage = "admin.v1"; export interface CreateUserRequest { username: string; password: string; roles: string[]; } export interface CreateUserResponse { success: boolean; message: string; } export interface DeleteUserRequest { userId: string; } export interface DeleteUserResponse { success: boolean; message: string; } export interface BlockUserRequest { /** Кого блокируем */ userId: string; /** Кто блокирует */ adminId: string; reason?: string | undefined; } export interface BlockUserResponse { success: boolean; message: string; } export interface UnblockUserRequest { userId: string; adminId: string; } export interface UnblockUserResponse { success: boolean; message: string; } export interface ChangeDataRequest { userId: string; sessionId: string; email?: string | undefined; phone?: string | undefined; fullName?: string | undefined; avatarUrl?: string | undefined; customStatusText?: string | undefined; customStatusEmoji?: string | undefined; timezone?: string | undefined; language?: string | undefined; isPublic?: boolean | undefined; } export interface ChangeDataResponse { success: boolean; message: string; } export interface AdminResetPasswordRequest { userId: string; newPassword: string; } export interface AdminResetPasswordResponse { success: boolean; message: string; } export interface AssignRoleRequest { userId: string; /** Передаем как string, внутри парсим в Int */ roleId: string; } export interface AssignRoleResponse { success: boolean; message: string; } export interface RevokeRoleRequest { userId: string; roleId: string; } export interface RevokeRoleResponse { success: boolean; message: string; } export interface BlockIpRequest { ipAddress: string; adminId: string; reason?: string | undefined; } export interface BlockIpResponse { success: boolean; message: string; } export interface UnblockIpRequest { ipAddress: string; adminId: string; } export interface UnblockIpResponse { success: boolean; message: string; } /** Пустой запрос, так как параметры не требуются */ export interface SyncUsersToSearchRequest { } export interface SyncUsersToSearchResponse { success: boolean; message: string; } export interface GetAllPermissionsAdminRequest { userId: string; sessionId: string; } export interface PermissionAdmin { id: string; code: string; description: string; module: string; roles: string[]; } export interface GetAllPermissionsAdminResponse { permissions: PermissionAdmin[]; } export interface GetAllRolesAdminRequest { userId: string; sessionId: string; } export interface RolesAdmin { id: string; name: string; level: number; permissions: string[]; ldapMapping: string[]; accounts: string[]; } export interface GetAllRolesAdminResponse { roles: RolesAdmin[]; } export interface CreateRoleAdminRequest { name: string; level: number; permissionCodes: string[]; } export interface UpdateRoleAdminRequest { id: string; name?: string | undefined; level?: number | undefined; permissionCodes: string[]; } export interface ModifyRoleAdminResponse { success: boolean; message: string; } export interface DeleteRoleAdminRequest { id: string; } export interface DeleteRoleAdminResponse { success: boolean; message: string; fallbackRoleName?: string | undefined; } export interface CreatePermissionAdminRequest { code: string; description: string; module: string; } export interface UpdatePermissionAdminRequest { id: string; roleIds: string[]; } export interface ModifyPermissionAdminResponse { success: boolean; message: string; } export interface GrafanaAlertRequest { payload: string; } /** Успешно ли обработан алерт */ export interface GrafanaAlertResponse { success: boolean; } export const ADMIN_V1_PACKAGE_NAME = "admin.v1"; /** Единый сервис для всех административных операций */ export interface AdminServiceClient { /** Управление учетными записями */ createUser(request: CreateUserRequest, metadata?: Metadata): Observable; deleteUser(request: DeleteUserRequest, metadata?: Metadata): Observable; blockUser(request: BlockUserRequest, metadata?: Metadata): Observable; unblockUser(request: UnblockUserRequest, metadata?: Metadata): Observable; /** Управление данными и безопасностью */ changeData(request: ChangeDataRequest, metadata?: Metadata): Observable; adminResetPassword(request: AdminResetPasswordRequest, metadata?: Metadata): Observable; /** Управление ролями (RBAC) */ assignRole(request: AssignRoleRequest, metadata?: Metadata): Observable; revokeRole(request: RevokeRoleRequest, metadata?: Metadata): Observable; /** Управление черным списком IP */ blockIp(request: BlockIpRequest, metadata?: Metadata): Observable; unblockIp(request: UnblockIpRequest, metadata?: Metadata): Observable; /** Синхронизация с поисковым движком (Elasticsearch) */ syncUsersToSearch(request: SyncUsersToSearchRequest, metadata?: Metadata): Observable; handleGrafanaAlert(request: GrafanaAlertRequest, metadata?: Metadata): Observable; /** RBAC */ getAllPermissions( request: GetAllPermissionsAdminRequest, metadata?: Metadata, ): Observable; getAllRoles(request: GetAllRolesAdminRequest, metadata?: Metadata): Observable; createRole(request: CreateRoleAdminRequest, metadata?: Metadata): Observable; updateRole(request: UpdateRoleAdminRequest, metadata?: Metadata): Observable; deleteRole(request: DeleteRoleAdminRequest, metadata?: Metadata): Observable; createPermission( request: CreatePermissionAdminRequest, metadata?: Metadata, ): Observable; updatePermission( request: UpdatePermissionAdminRequest, metadata?: Metadata, ): Observable; } /** Единый сервис для всех административных операций */ export interface AdminServiceController { /** Управление учетными записями */ createUser( request: CreateUserRequest, metadata?: Metadata, ): Promise | Observable | CreateUserResponse; deleteUser( request: DeleteUserRequest, metadata?: Metadata, ): Promise | Observable | DeleteUserResponse; blockUser( request: BlockUserRequest, metadata?: Metadata, ): Promise | Observable | BlockUserResponse; unblockUser( request: UnblockUserRequest, metadata?: Metadata, ): Promise | Observable | UnblockUserResponse; /** Управление данными и безопасностью */ changeData( request: ChangeDataRequest, metadata?: Metadata, ): Promise | Observable | ChangeDataResponse; adminResetPassword( request: AdminResetPasswordRequest, metadata?: Metadata, ): Promise | Observable | AdminResetPasswordResponse; /** Управление ролями (RBAC) */ assignRole( request: AssignRoleRequest, metadata?: Metadata, ): Promise | Observable | AssignRoleResponse; revokeRole( request: RevokeRoleRequest, metadata?: Metadata, ): Promise | Observable | RevokeRoleResponse; /** Управление черным списком IP */ blockIp( request: BlockIpRequest, metadata?: Metadata, ): Promise | Observable | BlockIpResponse; unblockIp( request: UnblockIpRequest, metadata?: Metadata, ): Promise | Observable | UnblockIpResponse; /** Синхронизация с поисковым движком (Elasticsearch) */ syncUsersToSearch( request: SyncUsersToSearchRequest, metadata?: Metadata, ): Promise | Observable | SyncUsersToSearchResponse; handleGrafanaAlert( request: GrafanaAlertRequest, metadata?: Metadata, ): Promise | Observable | GrafanaAlertResponse; /** RBAC */ getAllPermissions( request: GetAllPermissionsAdminRequest, metadata?: Metadata, ): | Promise | Observable | GetAllPermissionsAdminResponse; getAllRoles( request: GetAllRolesAdminRequest, metadata?: Metadata, ): Promise | Observable | GetAllRolesAdminResponse; createRole( request: CreateRoleAdminRequest, metadata?: Metadata, ): Promise | Observable | ModifyRoleAdminResponse; updateRole( request: UpdateRoleAdminRequest, metadata?: Metadata, ): Promise | Observable | ModifyRoleAdminResponse; deleteRole( request: DeleteRoleAdminRequest, metadata?: Metadata, ): Promise | Observable | DeleteRoleAdminResponse; createPermission( request: CreatePermissionAdminRequest, metadata?: Metadata, ): Promise | Observable | ModifyPermissionAdminResponse; updatePermission( request: UpdatePermissionAdminRequest, metadata?: Metadata, ): Promise | Observable | ModifyPermissionAdminResponse; } export function AdminServiceControllerMethods() { return function (constructor: Function) { const grpcMethods: string[] = [ "createUser", "deleteUser", "blockUser", "unblockUser", "changeData", "adminResetPassword", "assignRole", "revokeRole", "blockIp", "unblockIp", "syncUsersToSearch", "handleGrafanaAlert", "getAllPermissions", "getAllRoles", "createRole", "updateRole", "deleteRole", "createPermission", "updatePermission", ]; for (const method of grpcMethods) { const descriptor: any = Reflect.getOwnPropertyDescriptor(constructor.prototype, method); GrpcMethod("AdminService", method)(constructor.prototype[method], method, descriptor); } const grpcStreamMethods: string[] = []; for (const method of grpcStreamMethods) { const descriptor: any = Reflect.getOwnPropertyDescriptor(constructor.prototype, method); GrpcStreamMethod("AdminService", method)(constructor.prototype[method], method, descriptor); } }; } export const ADMIN_SERVICE_NAME = "AdminService";