import type Letta from "@letta-ai/letta-client"; export type RemoteEnvironmentTarget = { connectionId: string; } | { environmentId: string; } | { deviceId: string; } | { connectionName: string; }; export interface RemoteEnvironmentClientOptions { /** Letta API base URL. Defaults to https://api.letta.com. */ baseUrl?: string; /** Bearer token / API key. Defaults to process.env.LETTA_API_KEY when present. */ apiKey?: string; /** Additional headers, e.g. x-project-id. */ headers?: Record; /** Custom fetch implementation for tests or non-standard runtimes. */ fetch?: typeof fetch; } export interface RemoteEnvironmentConnection { id: string; connectionId: string | null; deviceId: string; connectionName: string; organizationId: string; userId?: string; apiKeyOwner?: string; podId: string | null; connectedAt: number | null; lastHeartbeat: number | null; lastSeenAt: number; firstSeenAt: number; currentMode?: string; metadata?: Record; } export interface RemoteEnvironmentListOptions { limit?: number; after?: string; onlineOnly?: boolean; } export interface RemoteEnvironmentListResult { connections: RemoteEnvironmentConnection[]; hasNextPage: boolean; } export interface ResolvedRemoteEnvironment { connectionId: string; environment?: RemoteEnvironmentConnection; target: RemoteEnvironmentTarget; } /** * Resolve explicit Letta Code environments through the generated Letta client. */ export declare class RemoteEnvironmentClient { private readonly client; constructor(options?: RemoteEnvironmentClientOptions, client?: Letta); listEnvironments(options?: RemoteEnvironmentListOptions): Promise; getEnvironmentByDeviceId(deviceId: string): Promise; resolveEnvironment(target: RemoteEnvironmentTarget): Promise; } //# sourceMappingURL=remote.d.ts.map