import { ConventionSet } from './types';
/**
 * Layer 1 Finance: Billing Conventions
 *
 * Philosophy: Automate billing to eliminate administrative burden and ensure
 * equitable access to education regardless of payment timing.
 *
 * Impact: 12 hours/week saved in billing operations
 */
export declare const BILLING_AUTOMATION_RULES: {
    TUITION: {
        name: string;
        schedule: {
            frequency: string;
            dayOfMonth: number;
            gracePeriod: number;
            reminderSchedule: number[];
        };
        paymentOptions: {
            full: {
                discount: number;
            };
            semester: {
                discount: number;
            };
            monthly: {
                discount: number;
            };
            weekly: {
                enabled: boolean;
                minIncomeQualification: boolean;
            };
        };
        philosophyMetrics: {
            'payment_flexibility.options': number;
            'financial_stress.reduced': boolean;
            'access_barriers.removed': number;
        };
    };
    ACTIVITY_FEES: {
        name: string;
        schedule: {
            timing: string;
            bundleOptions: boolean;
            familyDiscounts: {
                secondChild: number;
                thirdChild: number;
                additionalChildren: number;
            };
        };
        waiverRules: {
            automaticQualification: string[];
            discretionaryFund: number;
            anonymousApplication: boolean;
        };
        philosophyMetrics: {
            'activity_access.universal': boolean;
            'financial_barriers.eliminated': number;
            'family_burden.minimized': boolean;
        };
    };
    MEAL_PLANS: {
        name: string;
        schedule: {
            frequency: string;
            autoReload: {
                enabled: boolean;
                threshold: number;
                reloadAmount: number;
            };
        };
        subsidyIntegration: {
            freeAndReduced: string;
            noStigma: boolean;
            universalBreakfast: boolean;
        };
        philosophyMetrics: {
            'meal_access.guaranteed': number;
            'stigma.eliminated': boolean;
            'nutrition_security.score': number;
        };
    };
};
export declare class PaymentProcessor {
    static routePayment(payment: PaymentDetails): ProcessingResult;
    private static getAvailableProcessors;
    private static calculateProcessingCost;
    private static setupPaymentPlan;
}
export declare class FeeStructureOptimizer {
    static optimizeFeeStructure(currentFees: FeeStructure[], demographics: SchoolDemographics): OptimizedFeeStructure;
    private static getNecessityMultiplier;
    private static generatePaymentOptions;
    private static calculateSubsidyEligibility;
    private static calculateEquityScore;
    private static calculateProjectedRevenue;
    private static generateRecommendations;
}
export declare class CollectionAutomation {
    static createCollectionWorkflow(account: Account): CollectionWorkflow;
}
export declare const billingConventions: ConventionSet;
interface PaymentDetails {
    amount: number;
    method: string;
    payerProfile: {
        qualifiesForPlan: boolean;
        paymentHistory: string[];
    };
}
interface ProcessingResult {
    processor: string;
    fee: number;
    estimatedTime: string;
    confirmationMethod?: string;
    plan?: {
        installments: number;
        amount: number;
        frequency: string;
        autoDebit: boolean;
    };
}
interface FeeStructure {
    name: string;
    category: string;
    amount: number;
    frequency: string;
    mandatory: boolean;
}
interface SchoolDemographics {
    enrollment: number;
    medianIncome: number;
    freeReducedLunchRate: number;
    communityNeeds: string[];
}
interface OptimizedFeeStructure {
    fees: any[];
    projectedRevenue: number;
    equityScore: number;
    recommendations: string[];
}
interface Account {
    balance: number;
    daysOverdue: number;
    paymentHistory: string[];
    specialCircumstances: string[];
}
interface CollectionWorkflow {
    actions: string[];
    communications: string[];
    restrictions: string[];
    timeline: string;
    escalation?: string;
}
export default billingConventions;
//# sourceMappingURL=billing-conventions.d.ts.map