export type { TaskBoard, TaskItem } from "./tasks.js";
type JsonSchemaType = "string" | "number" | "integer" | "boolean" | "array" | "object" | "null";
type JsonSchema = {
    $schema?: string;
    $id?: string;
    title?: string;
    description?: string;
    type?: JsonSchemaType | readonly JsonSchemaType[];
    const?: unknown;
    default?: unknown;
    enum?: readonly unknown[];
    minimum?: number;
    exclusiveMinimum?: number;
    minLength?: number;
    minItems?: number;
    items?: JsonSchema;
    properties?: Record<string, JsonSchema>;
    required?: readonly string[];
    additionalProperties?: boolean | JsonSchema;
};
export type SuperintendentDoc = {
    frontmatter: SuperintendentFrontmatter;
    body: string;
    filePath: string;
};
export interface SuperintendentDocumentFileSystem {
    readFile(path: string, encoding: BufferEncoding): Promise<string>;
}
export type ResolvedSuperintendentDoc = {
    document: SuperintendentDoc;
    extendsPath?: string;
    frontmatterData: Record<string, unknown>;
};
export type SuperintendentFrontmatter = {
    kind: "superintendent";
    version: number;
    mcp?: Record<string, McpConfig>;
    builder: AgentRoleConfig;
    inspectors?: Record<string, AgentRoleConfig>;
    superintendent: AgentRoleConfig;
    owner: AgentRoleConfig;
    max_rounds?: number;
    status: StatusBlock;
};
export type AgentRoleConfig = {
    agent: string;
    mode?: string;
    cwd?: string;
    mcp?: Record<string, McpConfig>;
    prompt: string;
};
export type McpConfig = {
    command: string;
    args?: string[];
    timeout?: number;
};
export type StatusBlock = {
    state: "in_progress" | "review" | "completed";
    round: number;
    review_turn: number;
};
export declare const superintendentDocumentSchemaId = "https://poe-platform.github.io/poe-code/schemas/plans/superintendent.schema.json";
export declare const superintendentBaseDocumentSchemaId = "https://poe-platform.github.io/poe-code/schemas/plans/superintendent-base.schema.json";
export declare const superintendentDocumentSchema: JsonSchema;
export declare const superintendentBaseDocumentSchema: JsonSchema;
export declare function parseSuperintendentDoc(filePath: string, content: string): SuperintendentDoc;
export declare function resolveSuperintendentDoc(filePath: string, content: string, fs: SuperintendentDocumentFileSystem): Promise<ResolvedSuperintendentDoc>;
export declare function readExplicitBuilderAgent(filePath: string, content: string): string | undefined;
