import { Codegen, Context } from './internal/codegen'; import { CheckResource } from './check-codegen'; /** * Shape of a `selectedEnvironmentVariables` entry as stored on the backend * inside `agenticCheckData`. The runner accepts two forms — a bare variable * name, or an object with `key` and an optional `description`. The CLI * construct uses `name` (not `key`), so the codegen translates object-form * entries during emission. */ type StoredAgenticEnvironmentVariable = string | { key: string; description?: string; }; /** * Shape of `agenticCheckData` as stored on the backend and returned to the * CLI during `checkly import`. Only fields the construct exposes are read. * `assertionRules` is deliberately ignored — the agent generates those on * the first run and the backend's deploy logic preserves them, so the CLI * construct never needs to emit them. */ interface StoredAgenticCheckData { skills?: string[] | null; selectedEnvironmentVariables?: StoredAgenticEnvironmentVariable[] | null; } export interface AgenticCheckResource extends CheckResource { checkType: 'AGENTIC'; prompt: string; agenticCheckData?: StoredAgenticCheckData | null; } export declare class AgenticCheckCodegen extends Codegen { describe(resource: AgenticCheckResource): string; gencode(logicalId: string, resource: AgenticCheckResource, context: Context): void; } export {};