/** @packageDocumentation * @module WebGL */ import { LinePixels } from "@itwin/core-common"; /** @internal */ export interface LineCodeAssignmentArgs { /** Zero-based index of the new pattern within the texture. */ readonly code: number; /** The 32-bit bitfield representing the pattern written into the texture. */ readonly pattern: number; } /** Initialize the maximum line code slots based on System's maxTextureSize. * Must be called before initializeDefaultPatterns(). * @internal */ export declare function initializeLineCodeCapacity(maxTexSize: number): void; /** Initialize default line patterns. Called when System is ready. * @internal */ export declare function initializeDefaultPatterns(): void; /** Reset initialization state - used when System reinitializes. * @internal */ export declare function resetLineCodeState(): void; /** Map a LinePixels value to a texture row index that identifies the corresponding pattern. */ export declare function lineCodeFromLinePixels(pixels: LinePixels): number; /** @internal */ export declare function onLineCodeAssigned(listener: (args: LineCodeAssignmentArgs) => void): () => void; /** @internal */ export declare function getLineCodePatterns(): readonly number[]; /** @internal */ export declare const lineCodeTextureSize = 32; /** Get the current capacity of the line code texture. * @internal */ export declare function lineCodeTextureCapacity(): number; //# sourceMappingURL=LineCode.d.ts.map