import { type RequestInvitationEmailChallenge, type AcceptInvitationEmailChallenge } from "./remote-invitation-recovery.js"; import { RemotePrivatePublicationsClient } from "./remote-private-publications.js"; import { type ListRemoteWorkspaceInvitations, type IssueRemoteWorkspaceInvitation, type ResendRemoteWorkspaceInvitation, type RevokeRemoteWorkspaceInvitation, type AcceptRemoteWorkspaceInvitation } from "./remote-invitations.js"; import { type LeaveRemoteWorkspace } from "./remote-workspace-leave.js"; import { type RemoteWorkspaceContext, type RemoteWorkspaceSession, type RemoteAccountWorkspaceDiscovery } from "./remote-workspace-selection.js"; import { type RemoteWorkspaceMembersOptions } from "./remote-workspace.js"; import { type SetRemoteWorkspaceMemberRole, type RemoveRemoteWorkspaceMember } from "./remote-workspace.js"; import { type UpdateRemoteProfile, type UpdateRemoteWorkspace } from "./remote-profile.js"; export declare class HostedApiError extends Error { readonly status?: number; readonly code?: string; readonly detail?: string; readonly endpoint?: string; readonly apiUrl?: string; constructor(message: string, options?: { status?: number; code?: string; detail?: string; endpoint?: string; apiUrl?: string; }); } /** Passwordless auth transport for an explicitly selected instance. It never writes credentials. */ export declare class RemoteSkillsAuthClient { readonly apiOrigin: string; constructor(apiUrl: string); /** One fresh workspace-bound session for an entire publication. No credentials are saved. */ openPrivatePublications(email: string, code: string, context: RemoteWorkspaceContext): Promise; requestInvitationEmailChallenge(input: RequestInvitationEmailChallenge): Promise; acceptInvitationEmailChallenge(input: AcceptInvitationEmailChallenge): Promise; requestCode(email: string): Promise; verifyCode(email: string, code: string): Promise; startDevice(): Promise; pollDevice(deviceCode: string): Promise; private sessionClient; /** Discover memberships with fresh sign-in. No key or session is saved. */ listAccountWorkspaces(email: string, code: string, expectedUserId?: string): Promise; /** Contains a secret session token. Selection never creates or stores an API key. */ switchWorkspace(email: string, code: string, context: RemoteWorkspaceContext): Promise; private workspaceLogin; listWorkspaceInvitations(email: string, code: string, context: RemoteWorkspaceContext, options?: ListRemoteWorkspaceInvitations): Promise; getWorkspaceInvitation(email: string, code: string, context: RemoteWorkspaceContext, invitationId: string): Promise<{ invitation: import("./remote-invitations.js").RemoteWorkspaceInvitation; }>; issueWorkspaceInvitation(email: string, code: string, context: RemoteWorkspaceContext, input: IssueRemoteWorkspaceInvitation): Promise; resendWorkspaceInvitation(email: string, code: string, context: RemoteWorkspaceContext, invitationId: string, input: ResendRemoteWorkspaceInvitation): Promise; revokeWorkspaceInvitation(email: string, code: string, context: RemoteWorkspaceContext, invitationId: string, input: RevokeRemoteWorkspaceInvitation): Promise; acceptWorkspaceInvitation(email: string, code: string, context: RemoteWorkspaceContext, invitationId: string, input: AcceptRemoteWorkspaceInvitation): Promise; createApiKey(email: string, code: string, name: string, scopes?: string[], context?: RemoteWorkspaceContext): Promise<{ [field: string]: unknown; key: string; }>; listApiKeys(email: string, code: string, context?: RemoteWorkspaceContext): Promise[]>; revokeApiKey(email: string, code: string, keyId: string, context?: RemoteWorkspaceContext): Promise>; /** Reauthentication is ephemeral: it never replaces a saved key or profile. */ updateProfile(email: string, code: string, input: UpdateRemoteProfile, context?: RemoteWorkspaceContext): Promise<{ user: import("./remote-profile.js").RemoteCustomerProfile; }>; updateCurrentWorkspace(email: string, code: string, input: UpdateRemoteWorkspace, context?: RemoteWorkspaceContext): Promise<{ organization: import("./remote-profile.js").RemoteCurrentWorkspace; }>; /** Fresh owner/admin session; explicit context survives default-workspace OTP selection. */ listWorkspaceMembers(email: string, code: string, options?: RemoteWorkspaceMembersOptions, context?: RemoteWorkspaceContext): Promise; setWorkspaceMemberRole(email: string, code: string, membershipId: string, input: SetRemoteWorkspaceMemberRole, context?: RemoteWorkspaceContext): Promise; /** Fresh verification binds the exact observed incarnation before a single confirmed leave. */ leaveWorkspace(email: string, code: string, context: RemoteWorkspaceContext, input: LeaveRemoteWorkspace): Promise; removeWorkspaceMember(email: string, code: string, membershipId: string, input: RemoveRemoteWorkspaceMember, context?: RemoteWorkspaceContext): Promise; /** Common auth transport used by CLI login, preserving the selected instance through awaits. */ request(path: string, options?: RequestInit): Promise; }