import type { ProviderAuthMaterial } from "./authEnvelope.js";
import { type CredentialRef } from "./credentialRef.js";
import type { ProviderProfile } from "./providerProfile.js";
export type CredentialStoreRecord = {
    credentialRef: CredentialRef;
    profile?: ProviderProfile;
    privateMaterial?: ProviderAuthMaterial;
    redactedIdentity?: string;
};
export type CredentialStore = {
    put(record: CredentialStoreRecord): CredentialStoreRecord;
    get(ref: CredentialRef): CredentialStoreRecord | undefined;
    listPublic(): readonly Omit<CredentialStoreRecord, "privateMaterial">[];
};
export declare function createCredentialStore(initialRecords?: readonly CredentialStoreRecord[]): CredentialStore;
