import { PropsWithChildren } from 'react';
import { SdJwtVcRecord, W3cCredentialRecord } from '@credo-ts/core';
type OpenIDCredentialRecord = W3cCredentialRecord | SdJwtVcRecord | undefined;
export type OpenIDCredentialContext = {
    openIdState: OpenIDCredentialRecordState;
    getCredentialById: (id: string) => Promise<W3cCredentialRecord | SdJwtVcRecord | undefined>;
    storeCredential: (cred: W3cCredentialRecord | SdJwtVcRecord) => Promise<void>;
    removeCredential: (cred: W3cCredentialRecord | SdJwtVcRecord) => Promise<void>;
};
export type OpenIDCredentialRecordState = {
    openIDCredentialRecords: Array<OpenIDCredentialRecord>;
    w3cCredentialRecords: Array<W3cCredentialRecord>;
    sdJwtVcRecords: Array<SdJwtVcRecord>;
    isLoading: boolean;
};
interface OpenIDCredentialProviderProps {
    children: React.ReactNode;
}
export declare const OpenIDCredentialRecordProvider: React.FC<PropsWithChildren<OpenIDCredentialProviderProps>>;
export declare const useOpenIDCredentials: () => OpenIDCredentialContext;
export {};
//# sourceMappingURL=OpenIDCredentialRecordProvider.d.ts.map