import type { LockfileData } from './lockfile.js';
import type { RegistryClient } from './client.js';
export interface ResolvedPackage {
    name: string;
    version: string;
    content: string;
    revision: string;
    schemas: Array<{
        '@id': string;
        version: string;
        content: string;
    }>;
    agent?: {
        model?: string;
        provider?: string;
        systemPrompt?: string;
        tools?: string[];
        capabilities?: string[];
        temperature?: number;
        maxTokens?: number;
    };
}
export interface ResolveResult {
    success: true;
    packages: ResolvedPackage[];
    lockfile: LockfileData;
}
export interface ResolveConflict {
    type: 'version_mismatch' | 'missing_dependency' | 'not_found';
    message: string;
    packageA?: string;
    packageB?: string;
    schema?: string;
}
export interface ResolveError {
    success: false;
    conflicts: ResolveConflict[];
}
export declare function resolvePackage(client: RegistryClient, lockfile: LockfileData | null, type: string, name: string, constraint?: string): Promise<ResolveResult | ResolveError>;
//# sourceMappingURL=resolver.d.ts.map