/**
 * Log levels in ascending severity. Each level includes all levels above it.
 * "silent" suppresses all output. "debug" enables everything.
 *
 * @example
 * import { setLogLevel } from "@provablehq/sdk";
 * setLogLevel("silent"); // suppress all SDK logging
 */
export type LogLevel = "silent" | "error" | "warn" | "info" | "debug";
/**
 * Set the SDK log level. Levels are hierarchical:
 * - "silent" — suppress all SDK logging
 * - "error"  — only errors
 * - "warn"   — errors + warnings
 * - "info"   — errors + warnings + info (default)
 * - "debug"  — everything including debug traces
 *
 * This controls both TS-side and WASM-side logging. WASM log calls
 * (e.g., "Loading program", "Executing program") are silenced when
 * the level is below "info".
 */
export declare function setLogLevel(level: LogLevel): void;
/** Returns the current SDK log level. */
export declare function getLogLevel(): LogLevel;
/**
 * SDK logger object following console.log/warn/error/debug syntax.
 * Respects the current log level set via setLogLevel().
 */
export declare const logger: {
    log(...args: unknown[]): void;
    warn(...args: unknown[]): void;
    error(...args: unknown[]): void;
    debug(...args: unknown[]): void;
};
