import * as React from 'react'; export interface Usage { counting_mode?: 'full_duration' | 'participant_share'; used_seconds?: number; projected_seconds?: number; requested_seconds?: number; limit_seconds?: number; remaining_seconds?: number; member_id?: number; member_name?: string; rule_id?: number; period_label?: string; scope_label?: string; period_start_local?: string; period_end_local?: string; used_minutes?: number; projected_minutes?: number; requested_minutes?: number; limit_minutes?: number; remaining_minutes?: number; exceeded: boolean; message?: string; } export interface Restriction { id: number; internal_reason: string; starts_at: string | null; ends_at: string | null; public_message?: string | null; customer_name?: string; created_by_name?: string; status?: string; revoked_at?: string | null; revoke_reason?: string | null; } export interface PolicyQuote { participant_share_applies?: boolean; usage?: Usage[]; usage_limit_warnings?: Usage[]; customer_restriction_warnings?: Restriction[]; } export declare function durationSeconds(seconds: number): string; export declare function duration(minutes: number): string; export declare function UsageSummary(props: { items: Usage[]; title?: string; }): React.JSX.Element | null; export function PolicyReasons({ data }: { data?: { blockers?: { message: string; }[]; usage_limit_warnings?: Usage[]; customer_restriction_warnings?: { message?: string; }[]; }; }) { if (!data) return null; const messages = [...(data.blockers ?? []).map(p => p.message), ...(data.usage_limit_warnings ?? []).map(p => p.message), ...(data.customer_restriction_warnings ?? []).map(p => p.message)].filter((m): m is string => !!m); return