import { LoginRequest, WalletRequest } from '../util/request';
import { DataSharingRequest } from '../util';
export declare class RequestsManager {
    requests: WalletRequest[];
    constructor(requests: WalletRequest[] | string[]);
    from(requests: WalletRequest[]): void;
    fromStrings(requests: string[]): void;
    checkArrayAndFilterNull<T>(array: T[]): T[];
    getRequests(): WalletRequest[];
    /**
     * Verifies the WalletRequests are valid requests signed by valid DIDs
     * @throws if the requests are not valid
     */
    verify(): Promise<void>;
    checkReferrerOrigin(): void;
    getLoginRequests(): LoginRequest[] | undefined;
    getLoginRequestsOrThrow(): LoginRequest[];
    getDataSharingRequests(): DataSharingRequest[] | undefined;
    getDataSharingRequestsOrThrow(): DataSharingRequest[];
    getLoginRequestWithSameOriginOrThrow(): LoginRequest;
    getLoginRequestWithDifferentOriginOrThrow(): LoginRequest;
    getRequestsDifferentOriginOrThrow(): WalletRequest[];
}
export declare function castToWalletRequestSubclass(request: WalletRequest): WalletRequest;
//# sourceMappingURL=requestsManager.d.ts.map