export declare const flexProviderCredentialStoreId = "flex-provider-credentials.v1"; export declare const flexProviderCredentialConnectionLimit = 512; export interface IFlexProviderCredentialStore { getEntry(accountArg: string): Promise; setEntry(accountArg: string, valueArg: Uint8Array): Promise; deleteEntry(accountArg: string): Promise; } export interface IFlexProviderCredentialKernelStore extends IFlexProviderCredentialStore { deleteEntryIfValue(accountArg: string, expectedValueArg: Uint8Array): Promise<'deleted' | 'alreadyAbsent'>; } export interface IFlexProviderCredentialStorePair { kernelStore: TKernelStore; sealedStore: TSealedStore; } export interface IFlexProviderCredentialMigrationOptions { stores: IFlexProviderCredentialStorePair; recreateStores: (storesArg: IFlexProviderCredentialStorePair) => Promise>; connectionIds: Iterable; } export type TFlexProviderCredentialMigrationErrorCode = 'CONNECTION_LIMIT_EXCEEDED' | 'CREDENTIAL_CONFLICT' | 'CREDENTIAL_INVALID' | 'MUTATION_RECONCILIATION_FAILED'; export declare class FlexProviderCredentialMigrationError extends Error { readonly code: TFlexProviderCredentialMigrationErrorCode; constructor(code: TFlexProviderCredentialMigrationErrorCode); } export declare const migrateFlexProviderCredentials: (optionsArg: IFlexProviderCredentialMigrationOptions, signalArg?: AbortSignal) => Promise>;