/** * @license *------------------------------------------------------------------------------------------- * Copyright © 2026 Progress Software Corporation. All rights reserved. * Licensed under commercial license. See LICENSE.md in the package root for more information *------------------------------------------------------------------------------------------- */ import { Surface, Group, ImageExportOptions, SVGExportOptions } from '@progress/kendo-drawing'; import { BarcodeProps } from './BarcodeProps'; /** * Represents the `ref` of the Barcode component. */ export interface BarcodeHandle { /** The current root DOM element or `null`. */ element: HTMLDivElement | null; /** The props of the Barcode component. */ readonly props: Readonly; /** * @hidden */ barcodeInstance: any; /** * Gets the Drawing `Surface` of the Barcode. */ surface: Surface | null; /** * Exports the component as an image. The export operation runs asynchronously and returns a promise. * * @param options - The parameters for the exported image. * @returns A promise that resolves with a PNG image encoded as a Data URI. */ exportImage: (options?: ImageExportOptions) => Promise; /** * Exports the component as an SVG document. The export operation runs asynchronously and returns a promise. * * @param options - The parameters for the exported file. * @returns A promise that resolves with an SVG document that is encoded as a Data URI. */ exportSVG: (options?: SVGExportOptions) => Promise; /** * Exports a Barcode component as a Drawing `Scene`. * * @param options - The parameters for the export operation. * @returns The root `Group` of the scene. */ exportVisual: (options?: any) => Group; }