import type { Delegation } from '../types/passport.js'; import type { TaskRoleSpec } from '../types/coordination.js'; import type { FeasibilityResult } from '../types/feasibility.js'; /** * Lint a delegation for obvious problems BEFORE signing. * Call this at delegation-creation time to catch bad inputs early. */ export declare function lintDelegation(opts: { delegatedTo: string; delegatedBy: string; scope: string[]; spendLimit?: number; maxDepth?: number; currentDepth?: number; expiresInHours?: number; }): FeasibilityResult; /** * Check if a delegation can feasibly complete a task role. * Call at task-assignment time to catch mismatches early. */ export declare function lintTaskFeasibility(opts: { delegation: Delegation; role: TaskRoleSpec; taskDeadline?: string; }): FeasibilityResult; export interface GatewayLintResult { severity: 'error' | 'warning'; code: string; message: string; } export interface GatewayLintReport { delegation_id?: string; checks_run: number; checks_skipped: number; skipped_reasons: string[]; errors: number; warnings: number; results: GatewayLintResult[]; } /** * Lint a delegation against a task context using only checks * that the gateway can actually enforce. * * When context is not provided, checks that depend on it are skipped * and listed in skipped_reasons. An empty-context call returns a report * that says "N checks skipped" — not a false "clean" report. */ export declare function lintDelegationForGateway(delegation: Delegation, context?: { requiredScopes?: string[]; estimatedSpend?: number; }): GatewayLintReport; //# sourceMappingURL=feasibility.d.ts.map