/** * @license * Copyright 2026 Google LLC * SPDX-License-Identifier: Apache-2.0 */ import type { SecurityScanOptions } from '../types/options.js'; /** * Startup-only AI code tracking options exposed by the Agent SDK. * * These options must be converted into qodercli `--settings` before the CLI * child process starts. They are intentionally not part of the initialize * control request because git hook installation happens during CLI startup. */ export type AICodeTrackingLaunchOptions = { /** * Install qoder's AI code statistics post-commit hook in the target git repo. * * SDK integrations should default this to false/undefined and require * integrators to opt in explicitly. */ installGitCommitHook?: boolean; }; export type QoderCliFlagSettings = Record & { aiCodeTracking?: Record & AICodeTrackingLaunchOptions; securityScan?: Required; }; export type QoderAgentLaunchOptions = { /** * Generic qodercli settings injected via the CLI `--settings` flag. */ settings?: Record; /** * SDK-facing convenience options for AI code statistics. */ aiCodeTracking?: AICodeTrackingLaunchOptions; /** SDK-native code security capabilities. Omitted switches are disabled. */ securityScan?: SecurityScanOptions; }; /** * Merge SDK launch options into a single qodercli flag-settings object. * * Precedence: high-level SDK options override the same keys inside * `options.settings`, so integrators can use the ergonomic SDK API without * worrying about lower-level flag settings shape. */ export declare function buildQoderCliFlagSettings(options?: QoderAgentLaunchOptions): QoderCliFlagSettings; /** * Build the qodercli argv fragment that injects SDK launch settings. */ export declare function buildQoderCliFlagSettingsArgs(options?: QoderAgentLaunchOptions): string[];