import { a3 as ResolvedConfig, E as EntitlementCheck } from './types-CRIIjqzC.js';
import 'drizzle-orm/node-postgres';
import './errors.js';

interface EntitlementsCheckOptions {
    /** Se true, ignora cache local e força ida ao servidor. Default false. */
    cacheBust?: boolean;
}
declare function createEntitlementsNamespace(config: ResolvedConfig): {
    /**
     * Verifica se o caller pode usar `feature` no produto `productSlug`.
     * Retorno simples: `true` libera, `false` bloqueia. Cache 60s automático.
     *
     * Use `checkDetailed` se precisar do `reason` pra mensagem de upgrade.
     */
    check(productSlug: string, feature: string, opts?: EntitlementsCheckOptions): Promise<boolean>;
    checkDetailed: (productSlug: string, feature: string, opts?: EntitlementsCheckOptions) => Promise<EntitlementCheck>;
    /** Test helper: limpa o cache LRU. */
    __resetCache(): void;
};

export { type EntitlementsCheckOptions, createEntitlementsNamespace };
