import { PlanPillTone } from "../Components/PlanPill/PlanPillProps"; import { PlanExpiryInput } from "./planExpiry"; export type PlanBadgeInput = { /** Whether the org is on any plan at all. Defaults to true. */ hasPlan?: boolean; planName?: string | null; /** Plan code, e.g. `"free"`. Used to detect the free plan when `isFreePlan` is omitted. */ planCode?: string | null; /** Legacy numeric plan id, where `1` is the free plan. */ planId?: number | null; /** Explicit free-plan flag. Overrides detection from `planCode`/`planId`/`planName`. */ isFreePlan?: boolean; isTrial?: boolean; isExpired?: boolean; expiryDate?: PlanExpiryInput; /** The badge is hidden entirely for anyone who cannot act on it. */ canManageBilling?: boolean; /** Injectable clock, for tests. */ now?: Date; }; export type PlanBadgeResult = { visible: boolean; label: string; mobileLabel: string; subtitle: string; tone: PlanPillTone; }; export declare function resolvePlanBadge(input: PlanBadgeInput): PlanBadgeResult;