import { Query } from '../circuits/query';
import { Resolvers } from '../state/resolver';
import { DocumentLoader } from '@iden3/js-jsonld-merklization';
import { BaseConfig, VerifiablePresentation } from '@0xpolygonid/js-sdk';
export type VerifyOpts = {
    acceptedStateTransitionDelay?: number;
    acceptedProofGenerationDelay?: number;
};
export interface PubSignalsVerifier {
    verifyQuery(query: Query, schemaLoader?: DocumentLoader, verifiablePresentation?: VerifiablePresentation, opts?: VerifyOpts, circuitParams?: {
        [key: string]: unknown;
    }): Promise<BaseConfig>;
    verifyStates(resolver: Resolvers, opts?: VerifyOpts): Promise<void>;
    verifyIdOwnership(sender: string, challenge: bigint): Promise<void>;
}
export interface PubSignals {
    new (pubSignals: string[]): PubSignalsVerifier;
}
export type VerifierType = PubSignalsVerifier & PubSignals;
export declare class Circuits {
    static getCircuitPubSignals(id: string): VerifierType;
}
