{
  "version": 3,
  "sources": ["../../src/types/tables.ts"],
  "sourcesContent": ["// DXF Tables parsing types\n\nimport type { Point2D, Point3D } from './common'\nimport type { DXFTuple } from './dxf'\n\n/**\n * Partial point for parsing (all coordinates optional)\n */\nexport type PartialPoint2D = Partial<Point2D>\n\n/**\n * Partial 3D point for parsing (all coordinates optional)\n */\nexport type PartialPoint3D = Partial<Point3D>\n\n/**\n * DXF Header section result\n */\nexport interface ParsedHeader {\n  /** Minimum drawing extents */\n  extMin?: PartialPoint3D\n  /** Maximum drawing extents */\n  extMax?: PartialPoint3D\n  /** Drawing units for measurement (0=English, 1=Metric) */\n  measurement?: string | number\n  /** Default drawing units for AutoCAD DesignCenter blocks */\n  insUnits?: string | number\n  /** Dimension arrow size */\n  dimArrowSize?: string | number | Record<string, unknown>\n}\n\n/**\n * Block table entry\n * Internal representation during DXF parsing\n */\nexport interface BlockInternal {\n  /** Block name */\n  name?: string | number\n  /** Base point X coordinate */\n  x?: string | number\n  /** Base point Y coordinate */\n  y?: string | number\n  /** Base point Z coordinate */\n  z?: string | number\n  /** External reference path */\n  xref?: string | number\n  /** Paper space flag */\n  paperSpace?: string | number\n  /** Layout name reference */\n  layout?: string | number\n  /** Entities within this block */\n  entities?: any[]\n}\n\n/**\n * Line type element definition\n * Represents a single element in a complex line type pattern\n */\nexport interface LTypeElement {\n  /** Length of the element */\n  length?: string | number\n  /** Scale factors for the element */\n  scales?: Array<string | number>\n  /** Offset positions for the element */\n  offset?: Array<{ x: string | number; y: string | number }>\n  /** Shape definition code */\n  shape?: string | number\n  /** Shape number reference */\n  shapeNumber?: string | number\n  /** Style handle reference */\n  styleHandle?: string | number\n  /** Rotation angle */\n  rotation?: string | number\n  /** Text content for text elements */\n  text?: string | number\n}\n\n/**\n * Line Type (LTYPE) table entry\n * Internal representation during DXF parsing\n */\nexport interface LTypeInternal {\n  type: string\n  /** Pattern elements that define the line type */\n  pattern: LTypeElement[]\n  /** Line type name */\n  name?: string | number\n  /** Line type description */\n  description?: string | number\n  /** Standard flag values (bit-coded) */\n  flag?: string | number\n  /** Alignment code (ASCII code for 'A' = 65) */\n  alignment?: string | number\n  /** Number of elements in the pattern */\n  elementCount?: number\n  /** Total pattern length */\n  patternLength?: string | number\n}\n\n/**\n * Layer table entry\n * Internal representation during DXF parsing\n */\nexport interface LayerInternal {\n  type: string\n  /** Layer name */\n  name?: string | number\n  /** Line type name for this layer */\n  lineTypeName?: string | number\n  /** ACI color number */\n  colorNumber?: string | number\n  /** Standard flags (bit-coded) */\n  flags?: string | number\n  /** Plot flag */\n  plot?: boolean\n  /** Line weight enumeration */\n  lineWeightEnum?: string | number\n}\n\n/**\n * Application ID (APPID) table entry\n * Minimal internal representation during DXF parsing\n */\nexport interface AppIdInternal {\n  type: string\n  /** Application name */\n  name?: string | number\n  /** Standard flags (bit-coded) */\n  flags?: string | number\n}\n\n/**\n * Block Record (BLOCK_RECORD) table entry\n * Minimal internal representation during DXF parsing\n */\nexport interface BlockRecordInternal {\n  type: string\n  /** Block record name */\n  name?: string | number\n  /** Standard flags (bit-coded) */\n  flags?: string | number\n}\n\n/**\n * User Coordinate System (UCS) table entry\n * Minimal internal representation during DXF parsing\n */\nexport interface UcsInternal {\n  type: string\n  /** UCS name */\n  name?: string | number\n  /** Standard flags (bit-coded) */\n  flags?: string | number\n}\n\n/**\n * View (VIEW) table entry\n * Minimal internal representation during DXF parsing\n */\nexport interface ViewInternal {\n  type: string\n  /** View name */\n  name?: string | number\n  /** Standard flags (bit-coded) */\n  flags?: string | number\n}\n\n/**\n * Text Style (STYLE) table entry\n * Internal representation during DXF parsing\n */\nexport interface StyleInternal {\n  type: string\n  /** Style name */\n  name?: string | number\n  /** Line type name */\n  lineTypeName?: string | number\n  /** Fixed text height (0 if variable) */\n  fixedTextHeight?: string | number\n  /** Width factor */\n  widthFactor?: string | number\n  /** Oblique angle */\n  obliqueAngle?: string | number\n  /** Standard flags (bit-coded) */\n  flags?: string | number\n  /** Last height used */\n  lastHeightUsed?: string | number\n  /** Primary font file name */\n  primaryFontFileName?: string | number\n  /** Big font file name */\n  bigFontFileName?: string | number\n}\n\n/**\n * Viewport (VPORT) table entry\n * Internal representation during DXF parsing\n */\nexport interface VPortInternal {\n  type: string\n  /** Viewport name */\n  name?: string | number\n  /** Handle reference */\n  handle?: string | number\n  /** Standard flags (bit-coded) */\n  flags?: string | number\n  /** Lower-left corner coordinates */\n  lowerLeft: { x?: number; y?: number }\n  /** Upper-right corner coordinates */\n  upperRight: { x?: number; y?: number }\n  /** Center point coordinates */\n  center: { x?: number; y?: number }\n  /** Snap settings */\n  snap?: Record<string, unknown>\n  /** Snap spacing */\n  snapSpacing: { x?: number; y?: number }\n  /** Grid spacing */\n  gridSpacing: { x?: number; y?: number }\n  /** View direction from target */\n  direction: { x?: number; y?: number; z?: number }\n  /** View target point */\n  target: { x?: number; y?: number; z?: number }\n  /** View height */\n  height?: number\n  /** Snap rotation angle */\n  snapAngle?: number\n  /** View twist angle */\n  angle?: number\n  /** UCS origin X coordinate */\n  x?: number\n  /** UCS origin Y coordinate */\n  y?: number\n  /** UCS origin Z coordinate */\n  z?: number\n  /** UCS X-axis X component */\n  xAxisX?: number\n  /** UCS X-axis Y component */\n  xAxisY?: number\n  /** UCS X-axis Z component */\n  xAxisZ?: number\n  /** View elevation */\n  elevation?: number\n}\n\n/**\n * Layout object entry\n * Internal representation during DXF parsing\n */\nexport interface LayoutInternal {\n  /** Layout name */\n  name?: string | number\n  /** Handle reference */\n  handle?: string | number\n  /** Minimum limits X coordinate */\n  minLimitX?: number\n  /** Minimum limits Y coordinate */\n  minLimitY?: number\n  /** Maximum limits X coordinate */\n  maxLimitX?: number\n  /** Maximum limits Y coordinate */\n  maxLimitY?: number\n  /** Base point X coordinate */\n  x?: number\n  /** Base point Y coordinate */\n  y?: number\n  /** Base point Z coordinate */\n  z?: number\n  /** Minimum extents X coordinate */\n  minX?: number\n  /** Minimum extents Y coordinate */\n  minY?: number\n  /** Minimum extents Z coordinate */\n  minZ?: number\n  /** Maximum extents X coordinate */\n  maxX?: number\n  /** Maximum extents Y coordinate */\n  maxY?: number\n  /** Maximum extents Z coordinate */\n  maxZ?: number\n  /** Layout flag (PSLTSCALE or LIMCHECK) */\n  flag?: 'PSLTSCALE' | 'LIMCHECK'\n  /** Tab order */\n  tabOrder?: string | number\n  /** Elevation */\n  elevation?: number\n  /** UCS origin X coordinate */\n  ucsX?: number\n  /** UCS origin Y coordinate */\n  ucsY?: number\n  /** UCS origin Z coordinate */\n  ucsZ?: number\n  /** UCS X-axis X component */\n  ucsXaxisX?: number\n  /** UCS X-axis Y component */\n  ucsXaxisY?: number\n  /** UCS X-axis Z component */\n  ucsXaxisZ?: number\n  /** UCS Y-axis X component */\n  ucsYaxisX?: number\n  /** UCS Y-axis Y component */\n  ucsYaxisY?: number\n  /** UCS Y-axis Z component */\n  ucsYaxisZ?: number\n  /** UCS orthographic type */\n  ucsType?: 'NOT ORTHOGRAPHIC' | 'TOP' | 'BOTTOM' | 'FRONT' | 'BACK' | 'LEFT' | 'RIGHT'\n  /** Associated table record handle */\n  tableRecord?: string | number\n  /** Last active viewport handle */\n  lastActiveViewport?: string | number\n  /** Shade plot mode */\n  shadePlot?: string | number\n}\n\n/**\n * Dimension Style (DIMSTYLE) table entry\n * Internal representation during DXF parsing\n */\nexport interface DimStyleInternal {\n  type: string\n  /** Dimension style name */\n  name?: string | number\n  /** Standard flags (bit-coded) */\n  flags?: string | number\n  /** DIMPOST - General dimensioning suffix */\n  dimPost?: string | number\n  /** DIMAPOST - Alternate dimensioning suffix */\n  dimAPost?: string | number\n  /** DIMSCALE - Overall dimensioning scale factor */\n  dimScale?: number\n  /** DIMASZ - Dimensioning arrow size */\n  dimAsz?: number\n  /** DIMEXO - Extension line offset */\n  dimExo?: number\n  /** DIMDLI - Dimension line increment */\n  dimDli?: number\n  /** DIMEXE - Extension line extension */\n  dimExe?: number\n  /** DIMRND - Rounding value for dimension distances */\n  dimRnd?: number\n  /** DIMDLE - Dimension line extension */\n  dimDle?: number\n  /** DIMTP - Plus tolerance */\n  dimTp?: number\n  /** DIMTM - Minus tolerance */\n  dimTm?: number\n  /** DIMTXT - Dimensioning text height */\n  dimTxt?: number\n  /** DIMCEN - Size of center mark/lines */\n  dimCen?: number\n  /** DIMTSZ - Dimensioning tick size */\n  dimTsz?: number\n  /** DIMALTF - Alternate unit scale factor */\n  dimAltf?: number\n  /** DIMLFAC - Linear measurements scale factor */\n  dimLfac?: number\n  /** DIMTVP - Text vertical position */\n  dimTvp?: number\n  /** DIMTFAC - Dimension tolerance display scale factor */\n  dimTfac?: number\n  /** DIMGAP - Dimension line gap */\n  dimGap?: number\n  /** DIMALTRND - Determines rounding of alternate units */\n  dimAltRnd?: number\n  /** DIMTOL - Dimension tolerances generated if nonzero */\n  dimTol?: number\n  /** DIMLIM - Dimension limits generated if nonzero */\n  dimLim?: number\n  /** DIMTIH - Text inside horizontal if nonzero */\n  dimTih?: number\n  /** DIMTOH - Text outside horizontal if nonzero */\n  dimToh?: number\n  /** DIMSE1 - First extension line suppressed if nonzero */\n  dimSe1?: number\n  /** DIMSE2 - Second extension line suppressed if nonzero */\n  dimSe2?: number\n  /** DIMTAD - Text above dimension line if nonzero */\n  dimTad?: number\n  /** DIMZIN - Controls suppression of zeros for primary unit values */\n  dimZin?: number\n  /** DIMAZIN - Controls suppression of zeros for angular dimensions */\n  dimAzin?: number\n  /** DIMALT - Alternate unit dimensioning performed if nonzero */\n  dimAlt?: number\n  /** DIMALTD - Alternate unit decimal places */\n  dimAltd?: number\n  /** DIMTOFL - Force text inside extensions if nonzero */\n  dimTofl?: number\n  /** DIMSAH - Use separate arrow blocks if nonzero */\n  dimSah?: number\n  /** DIMTIX - Force text inside extensions if nonzero */\n  dimTix?: number\n  /** DIMSOXD - Suppress outside-extensions dimension lines if nonzero */\n  dimSoxd?: number\n  /** DIMCLRD - Dimension line color */\n  dimClrd?: number\n  /** DIMCLRE - Dimension extension line color */\n  dimClre?: number\n  /** DIMCLRT - Dimension text color */\n  dimClrt?: number\n  /** DIMADEC - Number of precision places for angular dimensions */\n  dimAdec?: number\n  /** DIMUNIT - Units format (obsolete, now use DIMLUNIT AND DIMFRAC) */\n  dimUnit?: number\n  /** DIMDEC - Number of decimal places for tolerance values */\n  dimDec?: number\n  /** DIMTDEC - Number of decimal places for tolerance values */\n  dimTdec?: number\n  /** DIMALTU - Units format for alternate units */\n  dimAltu?: number\n  /** DIMALTTD - Number of decimal places for alternate tolerance values */\n  dimAlttd?: number\n  /** DIMAUNIT - Angle format for angular dimensions */\n  dimAunit?: number\n  /** DIMFRAC - Fraction format */\n  dimFrac?: number\n  /** DIMLUNIT - Linear unit format */\n  dimLunit?: number\n  /** DIMDSEP - Decimal separator character */\n  dimDsep?: number\n  /** DIMTMOVE - Dimension text movement rules */\n  dimTmove?: number\n  /** DIMJUST - Horizontal dimension text position */\n  dimJust?: number\n  /** DIMSD1 - Suppression of first extension line */\n  dimSd1?: number\n  /** DIMSD2 - Suppression of second extension line */\n  dimSd2?: number\n  /** DIMTOLJ - Vertical justification for tolerance values */\n  dimTolj?: number\n  /** DIMTZIN - Controls suppression of zeros for tolerance values */\n  dimTzin?: number\n  /** DIMALTZ - Controls suppression of zeros for alternate unit values */\n  dimAltz?: number\n  /** DIMALTTZ - Controls suppression of zeros for alternate tolerance values */\n  dimAlttz?: number\n  /** DIMFIT - Fit options (obsolete, now use DIMATFIT and DIMTMOVE) */\n  dimFit?: number\n  /** DIMUPT - Cursor functionality for user-positioned text */\n  dimUpt?: number\n  /** DIMATFIT - Controls dimension text and arrow placement */\n  dimAtfit?: number\n  /** DIMTXSTY - Dimension text style (handle reference) */\n  dimTxsty?: string | number\n  /** DIMLDRBLK - Leader arrow block (handle reference) */\n  dimLdrblk?: string | number\n  /** DIMBLK - Arrow block (handle reference) */\n  dimBlk?: string | number\n  /** DIMBLK1 - First arrow block (handle reference) */\n  dimBlk1?: string | number\n  /** DIMBLK2 - Second arrow block (handle reference) */\n  dimBlk2?: string | number\n  /** DIMLWD - Dimension line lineweight */\n  dimLwd?: number\n  /** DIMLWE - Extension line lineweight */\n  dimLwe?: number\n}\n\n/**\n * DXF Objects section result\n */\nexport interface DictionaryObject {\n  type: 'DICTIONARY'\n  handle?: string | number\n  ownerHandle?: string | number\n  entries: Record<string, string>\n}\n\nexport interface XRecordObject {\n  type: 'XRECORD'\n  handle?: string | number\n  ownerHandle?: string | number\n\n  /** Raw tuples for downstream consumers (excluding the initial 0/XRECORD tuple). */\n  tuples: DXFTuple[]\n}\n\nexport interface ImageDefObject {\n  type: 'IMAGEDEF'\n  handle?: string | number\n\n  /** Soft-pointer ID/handle to the ACAD_IMAGE_dict dictionary (when present). */\n  ownerHandle?: string | number\n\n  /** File name of the referenced image. */\n  fileName?: string\n\n  /** Image size in pixels (when available). */\n  pixelSizeX?: number\n  pixelSizeY?: number\n\n  /** Raw tuples for downstream consumers (excluding the initial 0/IMAGEDEF tuple). */\n  tuples: DXFTuple[]\n}\n\nexport interface ImageDefReactorObject {\n  type: 'IMAGEDEF_REACTOR'\n  handle?: string | number\n\n  /** Object ID/handle for the associated IMAGE entity (when present). */\n  imageHandle?: string | number\n\n  /** Raw tuples for downstream consumers (excluding the initial 0/IMAGEDEF_REACTOR tuple). */\n  tuples: DXFTuple[]\n}\n\nexport type UnderlayDefinitionObjectType =\n  | 'UNDERLAYDEFINITION'\n  | 'PDFDEFINITION'\n  | 'DWFDEFINITION'\n  | 'DGNDEFINITION'\n\nexport interface UnderlayDefinitionObject {\n  type: UnderlayDefinitionObjectType\n  handle?: string | number\n\n  /** Soft-pointer ID/handle to the owning dictionary (when present). */\n  ownerHandle?: string | number\n\n  /** File name or path of the referenced underlay. */\n  fileName?: string\n\n  /** Underlay name within the file (e.g., sheet name). */\n  underlayName?: string\n\n  /** Raw tuples for downstream consumers (excluding the initial 0/<TYPE> tuple). */\n  tuples: DXFTuple[]\n}\n\nexport interface DimAssocObject {\n  type: 'DIMASSOC'\n  handle?: string | number\n\n  /** Soft-pointer ID/handle to the owning dictionary (when present). */\n  ownerHandle?: string | number\n\n  /** Raw tuples for downstream consumers (excluding the initial 0/DIMASSOC tuple). */\n  tuples: DXFTuple[]\n}\n\nexport interface FieldObject {\n  type: 'FIELD'\n  handle?: string | number\n\n  /** Soft-pointer ID/handle to the owning dictionary (when present). */\n  ownerHandle?: string | number\n\n  /** Raw tuples for downstream consumers (excluding the initial 0/FIELD tuple). */\n  tuples: DXFTuple[]\n}\n\nexport interface ParsedObjects {\n  /** Layout objects */\n  layouts: LayoutInternal[]\n\n  /** DICTIONARY objects keyed by handle */\n  dictionaries?: Record<string, DictionaryObject>\n\n  /** XRECORD objects keyed by handle */\n  xRecords?: Record<string, XRecordObject>\n\n  /** IMAGEDEF objects keyed by handle */\n  imageDefs?: Record<string, ImageDefObject>\n\n  /** IMAGEDEF_REACTOR objects keyed by handle */\n  imageDefReactors?: Record<string, ImageDefReactorObject>\n\n  /** UNDERLAYDEFINITION objects keyed by handle */\n  underlayDefinitions?: Record<string, UnderlayDefinitionObject>\n\n  /** DIMASSOC objects keyed by handle */\n  dimAssocs?: Record<string, DimAssocObject>\n\n  /** FIELD objects keyed by handle */\n  fields?: Record<string, FieldObject>\n}\n"],
  "mappings": ";;;;;;;;;;;;;;AAAA;AAAA;",
  "names": []
}
