/**
 * Type-safe path parameter extraction
 * Extracts path parameters from a string literal type
 * e.g. "/users/:id" -> { id: string }
 */
type PathParams<P extends string> = string extends P ? Record<string, string> : P extends `${infer _}:${infer Param}/${infer Rest}` ? {
    [K in Param]: string;
} & PathParams<`/${Rest}`> : P extends `${infer _}:${infer Param}` ? {
    [K in Param]: string;
} : {};
/**
 * API Endpoints
 * Type-safe API endpoint definitions
 */
declare const ApiEndpoints: {
    Ontologies: "/ontologies";
    OntologyById: "/ontologies/:id";
    CurrentUser: "/users/me";
    UserById: "/users/:id";
    Login: "/auth/login";
    Logout: "/auth/logout";
    RefreshToken: "/auth/refresh";
    CurrentTenant: "/tenants/current";
    TenantById: "/tenants/:id";
    ResolveContext: "/resolve";
    WebSocketResolve: "/resolve_ws";
    ToolsList: "/tools/list";
    ToolsExecute: "/tools/execute";
    ToolsStream: "/tools/stream";
    JsonRPC: "/mcp";
};
/**
 * Creates a URL path by replacing parameters in the path template
 *
 * @example
 * ```ts
 * const path = buildPath('/users/:id', { id: '123' }); // '/users/123'
 * ```
 */
declare function buildPath(pathTemplate: string, params?: Record<string, string>): string;
/**
 * Creates a full URL by combining base URL with a path
 * @param baseUrl Base URL
 * @param path Path to append
 * @returns Full URL
 */
declare function createFullUrl(baseUrl: string, path: string): string;

export { ApiEndpoints, type PathParams, buildPath, createFullUrl };
