/** * Shield Service Client * Authentication, Authorization, Organization Management */ import type { User, Workspace } from '../types'; export interface Organization { id: string; name: string; description?: string; logo?: string; createdAt: Date; updatedAt: Date; } export interface Permission { id: string; name: string; description?: string; } export interface AuthToken { token: string; refreshToken: string; expiresIn: number; } export interface LoginRequest { email: string; password: string; } export interface LoginResponse { user: User; token: AuthToken; } export interface OrganizationInput { name: string; description?: string; logo?: string; } export interface WorkspaceInput { name: string; description?: string; organizationId: string; } export interface ShieldClientConfig { baseUrl?: string; timeout?: number; } export declare class ShieldClient { private baseUrl; private timeout; private authToken?; private isConnected; constructor(config?: ShieldClientConfig); connect(): Promise; disconnect(): void; isConnectedStatus(): boolean; setAuthToken(token: string): void; getAuthToken(): string | undefined; login(request: LoginRequest): Promise; logout(): Promise; refreshToken(refreshToken: string): Promise; getCurrentUser(): Promise; getUserPermissions(userId: string): Promise; hasPermission(resource: string, action: string): Promise; createOrganization(input: OrganizationInput): Promise; updateOrganization(id: string, input: Partial): Promise; getOrganization(id: string): Promise; listOrganizations(): Promise; deleteOrganization(id: string): Promise; createWorkspace(input: WorkspaceInput): Promise; getWorkspace(id: string): Promise; listWorkspaces(organizationId: string): Promise; updateWorkspace(id: string, input: Partial): Promise; deleteWorkspace(id: string): Promise; private healthCheck; private request; } //# sourceMappingURL=ShieldClient.d.ts.map