/**
 * DEPRECATED — `DataEnforcementGate` has moved to the AEOESS Gateway.
 *
 * This class was product intelligence (stateful enforcement + contribution
 * ledger feed), not a protocol primitive. It lives at @aeoess/gateway
 * (src/sdk-migrated/core/data-enforcement.ts).
 *
 * Interface types remain here for compatibility with gateway wiring in
 * `ProxyGateway` config. See MIGRATION.md#data-lifecycle.
 */
import type { DataAccessReceipt, SourceReceipt, DataPurpose, AccessMethod } from '../types/data-source.js';
export interface DataEnforcementConfig {
    gatewayId: string;
    gatewayPublicKey: string;
    gatewayPrivateKey: string;
    mode: 'enforce' | 'audit' | 'off';
    onAccessBlocked?: (agentId: string, sourceId: string, violations: string[]) => void;
    onAccessRecorded?: (receipt: DataAccessReceipt) => void;
    onTermsWarning?: (agentId: string, sourceId: string, warnings: string[]) => void;
}
export interface DataAccessRequest {
    agentId: string;
    agentPublicKey: string;
    principalId: string;
    delegationId?: string;
    sourceReceiptId: string;
    declaredPurpose: DataPurpose;
    accessMethod: AccessMethod;
    accessScope: string;
    executionFrameId: string;
    dataHash?: string;
}
export interface DataAccessDecision {
    allowed: boolean;
    sourceReceiptId: string;
    hardViolations: string[];
    advisoryWarnings: string[];
    receipt?: DataAccessReceipt;
    accessesRemaining?: number;
}
export declare class DataEnforcementGate {
    constructor(_config?: unknown, _ledger?: unknown);
    registerSource(_receipt: SourceReceipt, _descriptor: string): void;
    getLedger(): never;
    getReceipts(): DataAccessReceipt[];
    getMerkleRoot(): string;
    checkAccess(_request: DataAccessRequest): DataAccessDecision;
    preflightCheck(_requests: DataAccessRequest[]): {
        allAllowed: boolean;
        decisions: DataAccessDecision[];
    };
}
//# sourceMappingURL=data-enforcement.d.ts.map