/**
 * User Plan & Flag Data Integration
 *
 * Provides dynamic retrieval of user plan and flags from the database
 * via users_metas table. Replaces hardcoded values throughout the system.
 */
import type { PlanType, UserFlag } from './entities/types';
import type { SessionUser } from './auth';
/**
 * Interface for user plan and flag data
 */
export interface UserPlanData {
    plan: PlanType;
    flags: UserFlag[];
    cached: boolean;
}
/**
 * Get user plan and flags from database
 * Uses user_metas table to store plan and flags data
 */
export declare function getUserPlanAndFlags(userId: string): Promise<UserPlanData>;
/**
 * Update user plan in database
 */
export declare function updateUserPlan(userId: string, plan: PlanType): Promise<boolean>;
/**
 * Update user flags in database
 */
export declare function updateUserFlags(userId: string, flags: UserFlag[]): Promise<boolean>;
/**
 * Add user plan and flags to user object (server-side helper)
 */
export declare function enrichUserWithPlanData(user: SessionUser): Promise<SessionUser & {
    plan: PlanType;
    flags: UserFlag[];
}>;
//# sourceMappingURL=user-data.d.ts.map