import { ServiceProvider, ServiceProviderOptions, VerificationResult } from './service-provider';
import { VerifiablePresentation } from '../types';
import { VerifiablePresentationV2 } from '../types/vc2';
import { CompositeStatusChecker } from '../status/credential-status';
export interface ServiceProviderV2Options extends ServiceProviderOptions {
    checkCredentialStatus?: boolean;
    statusChecker?: CompositeStatusChecker;
    statusCacheTTL?: number;
}
/**
 * Enhanced Service Provider with W3C VC 2.0 support
 */
export declare class ServiceProviderV2 extends ServiceProvider {
    private checkCredentialStatus;
    private statusChecker;
    private statusCache;
    private statusCacheTTL;
    constructor(name: string, trustedIssuers?: string[], options?: ServiceProviderV2Options);
    /**
     * Verify a presentation that may contain VC 2.0 credentials
     */
    verifyPresentationV2(presentation: VerifiablePresentation | VerifiablePresentationV2): Promise<VerificationResult>;
    /**
     * Check credential status with caching
     */
    private checkCredentialStatusWithCache;
    /**
     * Load a revocation list into the status checker
     */
    loadRevocationList(listId: string, list: any): Promise<void>;
    /**
     * Load a status list credential into the status checker
     */
    loadStatusListCredential(credential: any): Promise<void>;
    /**
     * Clear the status cache
     */
    clearStatusCache(): void;
    /**
     * Get cache statistics
     */
    getStatusCacheStats(): {
        size: number;
        hits: number;
        misses: number;
    };
}
//# sourceMappingURL=service-provider-v2.d.ts.map