import type { SignedPassport, KeyPair, FloorAttestation, ActionReceipt, Delegation, ValuesFloor, BeneficiaryInfo, MerkleProof, AttributionReport, ComplianceReport, BeneficiaryTrace } from './types/passport.js';
export interface JoinOptions {
    name: string;
    mission: string;
    owner: string;
    capabilities: string[];
    platform: string;
    models: string[];
    floor?: ValuesFloor | string;
    floorExtensions?: string[];
    validityWindow?: {
        notBefore?: string;
        notAfter: string;
    };
    beneficiary?: {
        id: string;
        relationship: 'creator' | 'employer' | 'delegator' | 'owner';
    };
}
export interface SocialContractAgent {
    passport: SignedPassport;
    keyPair: KeyPair;
    attestation: FloorAttestation | null;
    agentId: string;
    publicKey: string;
}
/**
 * Join the Agent Social Contract.
 *
 * One call. Creates identity, attests to values, registers beneficiary.
 * Returns everything an agent needs to participate.
 */
export declare function joinSocialContract(opts: JoinOptions): SocialContractAgent;
export interface TrustVerification {
    identity: {
        valid: boolean;
        errors: string[];
    };
    values: {
        attested: boolean;
        valid: boolean;
        errors: string[];
    } | null;
    overall: boolean;
}
/**
 * Verify another agent's standing in the social contract.
 *
 * One call. Checks identity, attestation, gives you a trust decision.
 */
export declare function verifySocialContract(passport: SignedPassport, attestation?: FloorAttestation | null): TrustVerification;
export interface DelegateOptions {
    from: SocialContractAgent;
    toPublicKey: string;
    scope: string[];
    spendLimit?: number;
    maxDepth?: number;
    expiresInHours?: number;
}
/**
 * Delegate authority from one agent (or human) to another.
 */
export declare function delegate(opts: DelegateOptions): Delegation;
export interface WorkOptions {
    type: string;
    target: string;
    scope: string;
    spend?: number;
    currency?: string;
    result: 'success' | 'failure' | 'partial';
    summary: string;
}
/**
 * Record a unit of work under a delegation.
 *
 * Returns a signed, verifiable receipt.
 */
export declare function recordWork(agent: SocialContractAgent, delegation: Delegation, delegationChain: string[], work: WorkOptions): ActionReceipt;
export interface ContributionProof {
    attribution: AttributionReport;
    merkleRoot: string;
    proofs: Map<string, MerkleProof>;
    traces: BeneficiaryTrace[];
}
/**
 * Generate cryptographic proof of an agent's contributions.
 *
 * Moved to @aeoess/gateway (attribution-reports) because proof generation
 * depends on scope-weight product policy. See MIGRATION.md#attribution-reports.
 */
export declare function proveContributions(_agent: SocialContractAgent, _receipts: ActionReceipt[], _delegations: Delegation[], _beneficiary: string, _beneficiaryMap?: Map<string, BeneficiaryInfo>): ContributionProof;
/**
 * Audit an agent's compliance. Requires a verifier keypair
 * (the auditor signs the report).
 */
export declare function auditCompliance(agentId: string, receipts: ActionReceipt[], floor: ValuesFloor, delegations: Map<string, {
    scope: string[];
    revoked: boolean;
}>, verifierKeyPair: KeyPair): ComplianceReport;
//# sourceMappingURL=contract.d.ts.map