import { DataEntity, QRISEntity, AcquirerDetailEntity, SwitchingDetailEntity, AdditionalInformationDetailEntity } from '../entities';
export declare class QRIS {
    /**
     * Sanitizes a string by removing newlines, carriage returns and trimming whitespace
     * @param input The string to sanitize
     * @returns The sanitized string
     */
    static sanitize(input: string): string;
    /**
     * Parse a QRIS code string into structured data
     * @param codeString The code string to parse
     * @returns Parsed data object
     * @throws Error if the code string format is invalid
     */
    static parseTag(codeString: string): DataEntity;
    static modifyContent(data: DataEntity, content: string): DataEntity;
    static parseAquirerDetail(codeString: string): AcquirerDetailEntity;
    static parseSwitchingDetail(codeString: string): SwitchingDetailEntity;
    static parseAdditionalInformationDetail(codeString: string): AdditionalInformationDetailEntity;
    static parse(qrString: string): QRISEntity;
    static modify(qrisEntity: QRISEntity): QRISEntity;
    static isValid(qris: QRISEntity): string[];
    private static isValidPaymentFee;
    static isValidQRIS(qrisParsed: QRISEntity): boolean;
}
