/**
 * FHIR ChargeItem resource for ABDM Invoice line items
 */
export interface CHARGE_ITEM_CODE {
    coding: Array<{
        system: string;
        code: string;
        display: string;
    }>;
    text?: string;
}
export interface CHARGE_ITEM_OPTIONS {
    id?: string;
    identifier?: Array<{
        system: string;
        value: string;
    }>;
    status: "planned" | "billable" | "not-billable" | "aborted" | "billed" | "entered-in-error" | "unknown";
    code: CHARGE_ITEM_CODE;
    subject: {
        reference: string;
        display?: string;
    };
    context?: {
        reference: string;
        display?: string;
    };
    occurrenceDateTime?: string;
    performer?: Array<{
        actor: {
            reference: string;
            display?: string;
        };
    }>;
    performingOrganization?: {
        reference: string;
        display?: string;
    };
    requestingOrganization?: {
        reference: string;
        display?: string;
    };
    quantity?: {
        value: number;
        unit?: string;
    };
    factorOverride?: number;
    priceOverride?: {
        value: number;
        currency: string;
    };
    overrideReason?: string;
    enterer?: {
        reference: string;
        display?: string;
    };
    enteredDate?: string;
    reason?: Array<{
        system?: string;
        code?: string;
        display?: string;
    }>;
    service?: Array<{
        reference: string;
    }>;
    note?: Array<{
        text: string;
        time?: string;
    }>;
}
export declare class ChargeItem {
    /**
     * Convert internal item data to FHIR ChargeItem JSON
     */
    static toFhir(options: CHARGE_ITEM_OPTIONS): any;
    /**
     * Build a ChargeItem from a voucher line item
     */
    static fromVoucherItem(item: {
        itemName?: string;
        itemId?: number;
        item?: string;
        quantity?: number;
        unit?: string;
        salePrice?: number;
    }, patientReference: string, encounterReference?: string, organizationReference?: string): CHARGE_ITEM_OPTIONS;
    /**
     * Store a ChargeItem in GCP FHIR store
     */
    static create(options: CHARGE_ITEM_OPTIONS, creds?: any, dbPath?: any): Promise<any>;
    /**
     * Get ChargeItem from GCP FHIR store
     */
    static get(id: string, creds?: any, dbPath?: any): Promise<any>;
}
//# sourceMappingURL=ChargeItem.d.ts.map