import type { MembershipLookup, OrganizationMemberRole } from "../contracts/membership"; type MembershipContext = { organizationIds: number[]; rolesByOrganizationId: Map; }; declare const membershipContext: import("node:async_hooks").AsyncLocalStorage; declare let membershipRepository: MembershipLookup; declare function configureMembershipLookup(lookup: MembershipLookup): void; declare function resolveMembershipLookup(): MembershipLookup; declare function resetMembershipLookupForTests(): void; declare function runWithMembershipContext(callback: () => T | Promise): Promise>; declare function currentOrgRole(organizationId: number): OrganizationMemberRole | null; declare function hasOrgMembership(organizationId: number): boolean; declare function currentOrganizationIds(): number[]; declare function hasMinimumOrgRole(organizationId: number, minimum: OrganizationMemberRole): boolean; export type { MembershipContext }; export { configureMembershipLookup, currentOrganizationIds, currentOrgRole, hasMinimumOrgRole, hasOrgMembership, membershipContext, membershipRepository, resetMembershipLookupForTests, resolveMembershipLookup, runWithMembershipContext, };