import { z } from 'zod'; /** A stdio MCP server whose tools are exposed to one role as * `__` (M1, capability `org-tool-providers`). * `env` values are literal — never expanded, never read from secrets. */ export declare const ToolProviderSchema: z.ZodObject<{ kind: z.ZodLiteral<"mcp-stdio">; name: z.ZodString; command: z.ZodString; args: z.ZodDefault>; env: z.ZodDefault>; allow: z.ZodOptional>; prefix: z.ZodOptional; timeout_ms: z.ZodDefault; idle_ms: z.ZodDefault; }, z.core.$loose>; export type ToolProviderConfig = z.infer; /** M2 (capability `org-endpoint-roles`): an endpoint role's delivery target. */ export declare const EndpointSchema: z.ZodObject<{ url: z.ZodString; credential_file: z.ZodOptional; timeout_ms: z.ZodOptional; input_hint: z.ZodOptional; }, z.core.$loose>; export type EndpointConfig = z.infer; /** Upper bound for `max_tool_rounds` (#326): each round is a full model turn, * so the cap still has to stop a model that keeps calling tools. */ export declare const MAX_TOOL_ROUNDS_LIMIT = 200; /** Upper bound for a blocked task's re-check interval (#329), in minutes — * both run_config.block_recheck_minutes and org_task_block's * recheckAfterMinutes. A block may last hours; its assignee may not go * unasked for longer than this. */ export declare const MAX_BLOCK_RECHECK_MINUTES = 60; /** Upper bound of run_config.max_role_resets (resets per role per run). */ export declare const MAX_ROLE_RESETS = 100; export declare const RoleSchema: z.ZodObject<{ id: z.ZodString; title: z.ZodDefault; type: z.ZodDefault; reports_to: z.ZodDefault>; responsibilities: z.ZodDefault>; instructions_file: z.ZodOptional; skills: z.ZodOptional>; skill_pool: z.ZodOptional>; blueprint: z.ZodOptional; ui: z.ZodOptional; y: z.ZodOptional; icon: z.ZodOptional; color: z.ZodOptional; }, z.core.$loose>>; adapter_config: z.ZodOptional>; max_tokens: z.ZodOptional>; provider: z.ZodOptional>; }, z.core.$strip>>; provider: z.ZodOptional>; vendor: z.ZodOptional>; apiKeyEnv: z.ZodOptional; apiKey: z.ZodOptional; baseUrl: z.ZodOptional; authTokenEnv: z.ZodOptional; authToken: z.ZodOptional; usageProxy: z.ZodOptional; usageProxyEnvVar: z.ZodOptional; }, z.core.$strict>>; policy: z.ZodOptional>>; denyTools: z.ZodOptional>>; fileWrite: z.ZodOptional>>; fileRead: z.ZodOptional>>; webAllow: z.ZodOptional>>; maxTokens: z.ZodOptional>; maxTokensBasis: z.ZodOptional>>; maxUsd: z.ZodOptional>; git: z.ZodOptional>>; sandbox: z.ZodOptional>; allowedDomains: z.ZodOptional>; deniedDomains: z.ZodOptional>; allowWrite: z.ZodOptional>; denyWrite: z.ZodOptional>; denyExec: z.ZodOptional>; denyRead: z.ZodOptional>; homeWriteAllow: z.ZodOptional>; allowUnixSockets: z.ZodOptional; }, z.core.$strict>>>; fence: z.ZodOptional>; confidenceThreshold: z.ZodOptional>; enablePIIDetection: z.ZodOptional>; scanMessages: z.ZodOptional>; scanOutput: z.ZodOptional>; abortThreshold: z.ZodOptional>; allowlist: z.ZodOptional>>; context: z.ZodOptional; reason: z.ZodOptional; source: z.ZodOptional; }, z.core.$strip>>>>; }, z.core.$loose>>>; autoApproveTools: z.ZodOptional>>; approvalTools: z.ZodOptional>>; access: z.ZodOptional>>; settings: z.ZodOptional>>>; access_ack: z.ZodOptional; at: z.ZodString; hash: z.ZodString; sig: z.ZodOptional; }, z.core.$strict>>>; }, z.core.$loose>>; session_scope: z.ZodOptional>; review_input: z.ZodOptional>; deliberative: z.ZodOptional; runtime: z.ZodOptional>; max_turns_per_message: z.ZodOptional; max_tool_rounds: z.ZodOptional; budget_tokens: z.ZodOptional; budget_usd: z.ZodOptional; tool_providers: z.ZodOptional; name: z.ZodString; command: z.ZodString; args: z.ZodDefault>; env: z.ZodDefault>; allow: z.ZodOptional>; prefix: z.ZodOptional; timeout_ms: z.ZodDefault; idle_ms: z.ZodDefault; }, z.core.$loose>>>; kind: z.ZodOptional>; endpoint: z.ZodOptional; timeout_ms: z.ZodOptional; input_hint: z.ZodOptional; }, z.core.$loose>>; }, z.core.$loose>; /** Default per-message turn budget for a role session. Deliberately huge so * the ceiling never bricks a legitimately long-running task (#140: a role * mid-task on `error_max_turns` used to crash with no recovery) — real * guardrails are budget_tokens, the idle watchdog, and the circuit breaker. * Set run_config.max_turns_per_message (or a role's own * max_turns_per_message) to cap turns when you want a hard limit. */ export declare const DEFAULT_MAX_TURNS_PER_MESSAGE = 100000; //# sourceMappingURL=types-role.d.ts.map