import { CodemodeClient, type CodemodeToolFunction } from "./index.js"; export declare const CODEMODE_ENVIRONMENT: { readonly url: "OPENGENI_CODEMODE_URL"; readonly token: "OPENGENI_CODEMODE_TOKEN"; readonly tokenFile: "OPENGENI_CODEMODE_TOKEN_FILE"; }; /** Minimal environment shape; public declarations must not require `@types/node`. */ export type CodemodeEnvironment = Readonly>; export type CodemodeClientProvider = () => CodemodeClient | Promise; /** A lazy catalog path. Every nested property remains callable at runtime. */ export type CodemodeDynamicTool = CodemodeToolFunction & { readonly [segment: string]: CodemodeDynamicTool; }; export type CodemodeDynamicTools = { readonly [segment: string]: CodemodeDynamicTool; }; /** Catalog-specific generated declarations augment this interface. */ export interface CodemodeGeneratedTools { } export type CodemodeToolsNamespace = CodemodeDynamicTools & CodemodeGeneratedTools; /** * Build (or reuse) the persistent client for the exact sandbox attempt. * The bearer file is reread for every HTTP request so worker renewal is live. */ export declare function environmentCodemodeClient(environment?: CodemodeEnvironment): CodemodeClient; /** * Lazy namespace used by ordinary sandbox programs: * `await tools.slack.search({ query: "..." })`. */ export declare function createCodemodeTools(client?: CodemodeClientProvider): CodemodeToolsNamespace; export declare const tools: CodemodeToolsNamespace;