import { CredentialFormat } from '@sphereon/ssi-types';
import { CredentialRequestClient } from './CredentialRequestClient';
import { AccessTokenResponse, EndpointMetadata, IssuanceInitiationRequestPayload, IssuanceInitiationWithBaseUrl, OpenID4VCIServerMetadata } from './types';
export declare class CredentialRequestClientBuilder {
    credentialEndpoint: string;
    credentialType: string | string[];
    format: CredentialFormat | CredentialFormat[];
    token: string;
    static fromIssuanceInitiationURI({ uri, metadata }: {
        uri: string;
        metadata?: EndpointMetadata;
    }): CredentialRequestClientBuilder;
    static fromIssuanceInitiationRequest({ request, metadata, }: {
        request: IssuanceInitiationRequestPayload;
        metadata?: EndpointMetadata;
    }): CredentialRequestClientBuilder;
    static fromIssuanceInitiation({ initiation, metadata, }: {
        initiation: IssuanceInitiationWithBaseUrl;
        metadata?: EndpointMetadata;
    }): CredentialRequestClientBuilder;
    withCredentialEndpointFromMetadata(metadata: OpenID4VCIServerMetadata): CredentialRequestClientBuilder;
    withCredentialEndpoint(credentialEndpoint: string): CredentialRequestClientBuilder;
    withCredentialType(credentialType: string | string[]): CredentialRequestClientBuilder;
    withFormat(format: CredentialFormat | CredentialFormat[]): CredentialRequestClientBuilder;
    withToken(accessToken: string): CredentialRequestClientBuilder;
    withTokenFromResponse(response: AccessTokenResponse): CredentialRequestClientBuilder;
    build(): CredentialRequestClient;
}
