/**
 * Admission Confirmation Types
 * Purpose: Type definitions for admission confirmation functionality
 */
import { FeeStructure } from '../../schema/fees/fee_structure';
/**
 * Fee structure item with populated fields for admission confirmation
 */
export interface AdmissionConfirmationFeeItem extends FeeStructure {
    fees_structure_name?: string;
    fees_category_name?: string;
    fees_total_amount?: number;
    fees_amount?: number;
}
/**
 * Helper type for extracting ID from populated or string fields
 */
export type PopulatedField<T> = T | {
    _id: string;
    [key: string]: unknown;
} | null | undefined;
/**
 * Helper type for general master populated fields
 */
export interface PopulatedGeneralMaster {
    _id: string;
    sygms_title?: string;
    sygms_code?: string;
}
/**
 * Helper type for class program populated fields
 */
export interface PopulatedClassProgram {
    _id: string;
    acacpm_alise_title?: string;
    acacpm_name?: string;
    acacpm_title?: string;
}
/**
 * Helper type for academic year populated fields
 */
export interface PopulatedAcademicYear {
    _id: string;
    acayr_name?: string;
    acayr_code?: string;
    acayr_title?: string;
}
/**
 * Helper type for entity populated fields
 */
export interface PopulatedEntity {
    _id: string;
    syen_name?: string;
}
/**
 * Type guard to check if a value is a populated object
 */
export declare function isPopulatedObject(value: unknown): value is {
    _id: string;
    [key: string]: unknown;
};
/**
 * Extract ID from a populated field or string
 */
export declare function extractIdFromField(field: string | {
    _id: string;
    [key: string]: unknown;
} | null | undefined): string;
/**
 * Extract title from a populated general master field
 */
export declare function extractTitleFromGeneralMaster(field: string | PopulatedGeneralMaster | null | undefined): string;
/**
 * Extract title from a populated class program field
 */
export declare function extractTitleFromClassProgram(field: string | PopulatedClassProgram | null | undefined): string;
/**
 * Extract title from a populated academic year field
 */
export declare function extractTitleFromAcademicYear(field: string | PopulatedAcademicYear | null | undefined): string;
