import { ITextFormatOptions } from '@libs-ui/interfaces-types'; /** * Highlight một từ khóa tìm kiếm bên trong chuỗi văn bản bằng cách bọc vào thẻ ``. * Hỗ trợ tìm kiếm không phân biệt dấu (Unicode-insensitive) và không phân biệt hoa/thường. * * @param value Chuỗi văn bản gốc cần highlight * @param search Từ khóa cần tìm và highlight * @param ignoreHighlight Nếu `true`, bỏ qua highlight và trả về chuỗi gốc * @param classHightLight Class CSS áp dụng cho span highlight (mặc định: 'bg-[#19344a] text-white') * @returns Chuỗi HTML đã được inject thẻ `` quanh từ khóa */ export declare const highlightByKeyword: (value: string | undefined, search: string | undefined, ignoreHighlight?: boolean, classHightLight?: string) => string; /** * Chuẩn hóa chuỗi văn bản theo chuẩn Unicode NFC và áp dụng các tùy chọn format. * Thường dùng để so sánh chuỗi nhất quán, không phụ thuộc vào cách gõ có dấu. * * @param text Chuỗi cần chuẩn hóa * @param options Các tùy chọn transform (trim, removeEmoji, removeUnicode...) * @returns Chuỗi đã chuẩn hóa */ export declare const formatTextCompare: (text: string, options?: ITextFormatOptions) => string; /** * Định dạng họ tên đầy đủ: viết hoa chữ cái đầu mỗi từ, xóa khoảng trắng thừa và emoji. * @param value Chuỗi họ tên cần format * @returns Chuỗi đã được chuẩn hóa * @example fullNameFormat(' nguyễn văn a ') → 'Nguyễn Văn A' */ export declare const fullNameFormat: (value: string) => string; /** * Viết hoa chữ cái đầu tiên của mỗi từ trong chuỗi. * @param text Chuỗi cần capitalize * @param options Tùy chọn xử lý trước (lowercase, trim, removeEmoji...) * @returns Chuỗi đã được capitalize theo từng từ * @example capitalize('hello world') → 'Hello World' */ export declare const capitalize: (text: string, options?: ITextFormatOptions) => string; /** * Viết hoa chữ cái đầu tiên của chuỗi. * @param text Chuỗi cần xử lý * @param options Tùy chọn format bổ sung * @returns Chuỗi với chữ cái đầu tiên được viết hoa * @example firstLetterToUpperCase('hello') → 'Hello' */ export declare const firstLetterToUpperCase: (text: string, options?: ITextFormatOptions) => string; /** * Viết hoa một ký tự tại vị trí bất kỳ trong chuỗi. * @param text Chuỗi cần xử lý * @param position Vị trí ký tự cần viết hoa (0-indexed) * @param options Tùy chọn format bổ sung * @returns Chuỗi với ký tự tại vị trí được viết hoa */ export declare const uppercaseByPosition: (text: string, position: number, options?: ITextFormatOptions) => string; /** * Escape các ký tự đặc biệt HTML thành HTML entities để tránh XSS. * @param str Chuỗi cần escape * @returns Chuỗi an toàn (& → &, < → <, > → >, " → ", ' → ') * @example escapeHtml('