import type PluginManager from '../PluginManager';
import type { AnyConfigurationSchemaType } from '../configuration';
import type { AnyDataAdapter } from './BaseAdapter';
import type { SnapshotIn } from 'mobx-state-tree';
type ConfigSnap = SnapshotIn<AnyConfigurationSchemaType>;
interface AdapterCacheEntry {
    dataAdapter: AnyDataAdapter;
    sessionIds: Set<string>;
}
export declare function getAdapter(pluginManager: PluginManager, sessionId: string, adapterConfigSnapshot: SnapshotIn<AnyConfigurationSchemaType>): Promise<AdapterCacheEntry>;
export type getSubAdapterType = (adapterConfigSnap: ConfigSnap) => ReturnType<typeof getAdapter>;
export declare function freeAdapterResources(args: Record<string, any>): void;
export declare function clearAdapterCache(): void;
export {};
