import type { Adapter, AdapterPayload } from '../../../templates/types/oidc-provider';
import type { RepresentationConverter } from '../../storage/conversion/RepresentationConverter';
import type { AdapterFactory } from './AdapterFactory';
import { PassthroughAdapter, PassthroughAdapterFactory } from './PassthroughAdapterFactory';
/**
 * This {@link Adapter} redirects the `find` call to its source adapter.
 * In case no client data was found in the source for the given Client ID,
 * this class will do an HTTP GET request to that Client ID.
 * If the result is a valid Client ID document, that will be returned instead.
 *
 * See https://solidproject.org/TR/2022/oidc-20220328#clientids-document.
 */
export declare class ClientIdAdapter extends PassthroughAdapter {
    protected readonly logger: import("../..").Logger;
    private readonly converter;
    constructor(name: string, source: Adapter, converter: RepresentationConverter);
    find(id: string): Promise<AdapterPayload | void>;
    /**
     * Parses RDF data found at a Client ID.
     * @param data - Raw data from the Client ID.
     * @param id - The actual Client ID.
     * @param response - Response object from the request.
     */
    private parseRdfClientId;
}
export declare class ClientIdAdapterFactory extends PassthroughAdapterFactory {
    private readonly converter;
    constructor(source: AdapterFactory, converter: RepresentationConverter);
    createStorageAdapter(name: string): Adapter;
}
