import type { EntitlementsCache, ExpirationTime } from '../types'; import type { FeatureKey, TenantId, UserId } from '../../types'; import type { Permission } from '../../../identity/types'; import type { VendorEntitlementsV1 } from '../../api-types'; import { Plan, FeatureFlag } from '@frontegg/entitlements-javascript-commons'; export declare class InMemoryEntitlementsCache implements EntitlementsCache { readonly revision: string; private nodeCache; private constructor(); getEntitlementExpirationTime(featKey: FeatureKey, tenantId: TenantId, userId?: UserId): Promise; getLinkedFeatures(permissionKey: Permission): Promise>; getFeatureFlags(featureKey: string): Promise; getPlans(featureKey: string): Promise; static initialize(data: VendorEntitlementsV1.GetDTO, revPrefix?: string): InMemoryEntitlementsCache; private setupEntitlementsReadModel; private setupPermissionsReadModel; private setupFeatureFlagsReadModel; private setupPlansReadModel; clear(): Promise; shutdown(): Promise; }