import { ClientSession } from "#client/session.js"; import type { AgentInfoResult, ClientOptions, HealthResult, SessionState } from "#client/types.js"; /** * HTTP client for talking to a deployed eve agent. * * A single client is bound to one host and auth configuration. It can create * many concurrent {@link ClientSession | sessions}, each tracking their own * conversation state independently. */ export declare class Client { #private; constructor(options: ClientOptions); /** * Checks the health of the eve agent server. * * @throws {ClientError} If the server returns a non-successful status. */ health(): Promise; /** * Fetches the agent inspection payload from `GET /eve/v1/info`. * * The dev TUI uses it to render its startup header. Remote deployments * require whatever auth the info route accepts, which defaults to Vercel * OIDC outside local development. * * @throws {ClientError} If the server returns a non-successful status. */ info(): Promise; /** * Performs an authenticated fetch against a path on this eve target. * * This is the raw escape hatch for framework-owned routes (for example * channel ingress or dev-only schedule dispatch) while preserving the same * auth/header cascade used by {@link health}, {@link info}, and sessions. */ fetch(path: string, init?: RequestInit): Promise; /** * Creates a {@link ClientSession} handle for one conversation. * * - **No arguments**: starts a fresh conversation. The first * `session.send()` call creates the run on the server. * - **{@link SessionState}**: resumes a previously serialized session. * - **string**: shorthand for resuming with a continuation token alone. */ session(state?: SessionState | string): ClientSession; }