import { Ot as JsxChildren, pt as HashMetadata } from "./types-Bf8_Apq_.cjs";

//#region src/id/hashSource.d.ts
/**
 * Calculates a unique hash for a given string using SHA-256.
 *
 * First 16 characters of hash, hex encoded.
 *
 * @param {string} string - The string to be hashed.
 * @returns {string} The resulting hash as a hexadecimal string.
 */
declare function hashString(string: string): string;
/**
 * Calculates a unique ID for the given children objects by hashing their sanitized JSON string representation.
 *
 * @param {any} childrenAsObjects - The children objects to be hashed.
 * @param {string} [context] - The context for the children.
 * @param {string} [id] - The ID for the JSX children object.
 * @param {number} [maxChars] - The maxChars limit for the JSX children object.
 * @param {string} [dataFormat] - The data format of the sources.
 * @param {function} [hashFunction] - Custom hash function.
 * @returns {string} - The unique hash of the children.
 */
declare function hashSource({
  source,
  context,
  id,
  maxChars,
  dataFormat
}: {
  source: JsxChildren | string;
} & HashMetadata, hashFunction?: (string: string) => string): string;
//#endregion
//#region src/id/hashTemplate.d.ts
declare function hashTemplate(template: {
  [key: string]: string;
}, hashFunction?: typeof hashString): string;
//#endregion
export { hashSource, hashString, hashTemplate };
//# sourceMappingURL=id.d.cts.map