export type GiaiProps = { assetReference: string | number | bigint; companyPrefix: string | number | bigint; filter?: string | number | undefined; }; /** * GIAI-96 encoder and decoder as defined by the GS1 EPC Tag data standard */ export default class Giai { #private; static PARTITION_TABLE: number[]; static EPC_HEADER: string; static BARCODE_PREFIX: string; static GROUP_SEPARATOR: string; static URN_PREFIX: string; static fromHex: (hexIdentifier: string) => Giai; /** * * @param {string | null | undefined} barcodeString * @returns */ static fromBarcode: (barcodeString: string) => Giai; /** * Creates a GIAI instance from a purse identity URI (urn:epc:giai:[companyprefix].[assetreference]) * @param {string} uri EPC GIAI pure identity URI */ static fromEpcPureIdentityUri(uri: string): Giai; /** * Attempt to create a GIAI instance from a string with unknown format. Could be either a URN, barcode value * or EPC value. * @param {string} value * @returns */ static fromString(value: string, ignoreError?: false): Giai; static fromString(value: string, ignoreError: true): Giai | undefined; /** * * @param {GiaiProps} options */ constructor({ assetReference, companyPrefix }: GiaiProps); get assetReference(): string | number | bigint; get companyPrefix(): string | number | bigint; toEpcPureIdentityUri(): string; toGiaiBarcode(): string; toEpcHex(): string; } export declare function hexToBitString(hexString: string): string; declare global { interface Window { Giai: typeof Giai | undefined; } }