/** Default Respan API base (SaaS). Enterprise users override this. */ export declare const DEFAULT_BASE_URL = "https://api.respan.ai/api"; export declare const integrateFlags: { local: import("@oclif/core/interfaces").BooleanFlag; global: import("@oclif/core/interfaces").BooleanFlag; enable: import("@oclif/core/interfaces").BooleanFlag; disable: import("@oclif/core/interfaces").BooleanFlag; 'project-id': import("@oclif/core/interfaces").OptionFlag; 'base-url': import("@oclif/core/interfaces").OptionFlag; attrs: import("@oclif/core/interfaces").OptionFlag; 'customer-id': import("@oclif/core/interfaces").OptionFlag; 'span-name': import("@oclif/core/interfaces").OptionFlag; 'workflow-name': import("@oclif/core/interfaces").OptionFlag; 'dry-run': import("@oclif/core/interfaces").BooleanFlag; }; export type Scope = 'local' | 'global' | 'both'; /** * Resolve whether to write local, global, or both configs. * * - `--global` → 'global' * - `--local` → 'local' * - neither → tool-specific default (passed by each command) */ export declare function resolveScope(flags: { local: boolean; global: boolean; }, defaultScope?: Scope): Scope; /** * Find the project root (git root, or cwd if not in a repo). */ export declare function findProjectRoot(): string; /** * Return the bundled Claude Code hook script contents. * * The .py file lives in src/assets/ and is copied to dist/assets/ during * build. Reading at runtime keeps the hook version-locked to the CLI * version — upgrading the CLI and re-running integrate updates the hook. */ /** * Return the bundled JS hook script contents for the given CLI tool. * These are standalone Node.js scripts bundled with esbuild. */ export declare function getJsHookScript(tool: 'claude-code' | 'gemini-cli' | 'codex-cli'): string; /** * Deep merge source into target. * Objects are recursively merged; arrays and primitives from source overwrite. */ export declare function deepMerge(target: Record, source: Record): Record; export declare function ensureDir(dirPath: string): void; export declare function readJsonFile(filePath: string): Record; export declare function writeJsonFile(filePath: string, data: Record): void; export declare function readTextFile(filePath: string): string; export declare function writeTextFile(filePath: string, content: string): void; /** * Read a `KEY=value` line from .env-style content. Trims before stripping a * single layer of surrounding quotes — the closing quote can sit inside * trailing whitespace, so order matters. Returns undefined if absent or empty. */ export declare function extractEnvVar(content: string, key: string): string | undefined; export declare function expandHome(p: string): string; export declare function parseAttrs(raw: string): Record; /** * Convert a Record to OTel resource attributes string. * Format: key1=value1,key2=value2 */ export declare function toOtelResourceAttrs(attrs: Record): string;