UNPKG

parse-tmx

Version:
371 lines 12.3 kB
//#region src/models/tmx/parsed/TMXEditorSettingsParsed.d.ts interface TMXEditorSettingsParsed extends Record<string, unknown> {} //#endregion //#region src/models/tmx/parsed/TMXFlipsParsed.d.ts interface TMXFlipsParsed { Diagonal: boolean; Horizontal: boolean; Vertical: boolean; } //#endregion //#region src/models/tmx/shared/TMXImageShared.d.ts interface TMXImageShared { height: number; source: string; width: number; } //#endregion //#region src/models/tmx/parsed/TMXImageParsed.d.ts interface TMXImageParsed extends TMXImageShared {} //#endregion //#region src/models/Shape.d.ts declare enum Shape { Ellipse = "ellipse", Point = "point", Polygon = "polygon", Rectangle = "rectangle" } //#endregion //#region src/models/tmx/parsed/TMXPropertiesParsed.d.ts type TMXPropertiesParsed = Record<string, unknown>[]; //#endregion //#region src/models/tmx/shared/TMXObjectShared.d.ts interface TMXObjectShared { gid: number; height: number; id: number; type: string; width: number; x: number; y: number; } //#endregion //#region src/models/tmx/parsed/TMXObjectParsed.d.ts interface TMXObjectParsed extends TMXObjectShared { flips?: TMXFlipsParsed; name: string; points?: [number, number][]; properties?: TMXPropertiesParsed; shape: Shape; text?: string; value: string; } //#endregion //#region src/models/tmx/shared/TMXLayerShared.d.ts interface TMXLayerShared { height: number; id: number; locked?: number; name: string; offsetx?: number; offsety?: number; opacity?: number; parallaxx?: number; parallaxy?: number; tintcolor?: string; type: string; visible?: number; width: number; x?: number; y?: number; } //#endregion //#region src/models/tmx/parsed/TMXLayerParsed.d.ts interface TMXLayerParsed extends TMXLayerShared { data?: number[]; flips?: TMXFlipsParsed[]; image?: TMXImageParsed; objects?: TMXObjectParsed[]; properties?: TMXPropertiesParsed; } //#endregion //#region src/models/tmx/shared/TMXGroupLayerShared.d.ts interface TMXGroupLayerShared { id: number; name: string; type: string; } //#endregion //#region src/models/tmx/parsed/TMXGroupLayerParsed.d.ts interface TMXGroupLayerParsed extends TMXGroupLayerShared { layers: TMXLayerParsed[]; properties?: TMXPropertiesParsed; } //#endregion //#region src/models/tmx/shared/TMXTileShared.d.ts interface TMXTileShared { gid?: number; id: number; probability?: number; } //#endregion //#region src/models/tmx/parsed/TMXTileParsed.d.ts interface TMXTileParsed extends TMXTileShared { animation?: { frames: number[]; }; id: number; objects?: TMXObjectParsed[]; properties?: TMXPropertiesParsed; type: string; } //#endregion //#region src/models/tmx/shared/TMXBaseTilesetShared.d.ts interface TMXBaseTilesetShared { firstgid: number; } //#endregion //#region src/models/tmx/shared/TMXEmbeddedTilesetShared.d.ts interface TMXEmbeddedTilesetShared extends TMXBaseTilesetShared { columns: number; imageheight: number; imagewidth: number; margin?: number; name: string; spacing?: number; tilecount: number; tileheight: number; tilewidth: number; } //#endregion //#region src/models/tmx/parsed/TMXEmbeddedTilesetParsed.d.ts interface TMXEmbeddedTilesetParsed extends TMXEmbeddedTilesetShared { image: TMXImageParsed; tiles: TMXTileParsed[]; } //#endregion //#region src/models/tmx/shared/TMXExternalTilesetShared.d.ts interface TMXExternalTilesetShared extends TMXBaseTilesetShared { source: string; } //#endregion //#region src/models/tmx/parsed/TMXExternalTilesetParsed.d.ts interface TMXExternalTilesetParsed extends TMXExternalTilesetShared {} //#endregion //#region src/models/tmx/parsed/TMXTilesetParsed.d.ts type TMXTilesetParsed = TMXEmbeddedTilesetParsed | TMXExternalTilesetParsed; //#endregion //#region src/models/tmx/shared/TMXMapShared.d.ts declare class TMXMapShared { height: number; infinite: number; nextlayerid: number; nextobjectid: number; orientation: string; renderorder: string; tiledversion: string; tileheight: number; tilewidth: number; version: number; width: number; } //#endregion //#region src/models/tmx/parsed/TMXMapParsed.d.ts declare class TMXMapParsed extends TMXMapShared { editorsettings: TMXEditorSettingsParsed; layers: (TMXGroupLayerParsed | TMXLayerParsed)[]; properties: TMXPropertiesParsed; tilesets: TMXTilesetParsed[]; constructor(init?: Partial<TMXMapParsed>); } //#endregion //#region src/models/tmx/parsed/TMXParsed.d.ts declare class TMXParsed { map: TMXMapParsed; constructor(map?: TMXMapParsed); } //#endregion //#region src/parseTmx.d.ts declare const parseTmx: (xmlString: string, translateFlips?: boolean) => Promise<TMXParsed>; //#endregion //#region src/models/Compression.d.ts declare enum Compression { Gzip = "gzip", Zlib = "zlib" } //#endregion //#region src/models/Encoding.d.ts declare enum Encoding { Base64 = "base64", Csv = "csv" } //#endregion //#region src/models/Flipped.d.ts declare enum Flipped { Diagonally = 536870912, Vertically = 1073741824, Horizontally = 2147483648 } //#endregion //#region src/util/isExternalTileset.d.ts declare const isExternalTileset: (tileset: TMXEmbeddedTilesetShared | TMXExternalTilesetShared) => tileset is TMXExternalTilesetShared; //#endregion //#region src/models/tmx/node/BaseTMXNode.d.ts declare class BaseTMXNode<T> { #private; [key: string]: unknown; $: T; } //#endregion //#region src/models/tmx/node/TMXNode.d.ts type TMXNode<T, TChildNode extends BaseTMXNode<unknown> | undefined = undefined> = BaseTMXNode<T> & { $$: TChildNode extends undefined ? undefined : TChildNode[]; }; //#endregion //#region src/models/tmx/node/TMXDataNode.d.ts interface TMXDataNode extends TMXNode<{ compression?: Compression; encoding: Encoding; }> { _: string; } //#endregion //#region src/models/tmx/node/TMXImageNode.d.ts interface TMXImageNode extends TMXNode<TMXImageShared> {} //#endregion //#region src/models/tmx/node/TMXPropertyNode.d.ts interface TMXPropertyNode extends TMXNode<{ name: string; value?: string; }> { _: string; } //#endregion //#region src/models/tmx/node/TMXPropertiesNode.d.ts interface TMXPropertiesNode extends TMXNode<Record<string, never>, TMXPropertyNode> {} //#endregion //#region src/models/tmx/node/TMXObjectNode.d.ts interface TMXObjectNode extends TMXNode<TMXObjectShared, TMXDataNode | TMXPropertiesNode> { polygon?: TMXNode<{ points: string; }>[]; properties?: { property: TMXPropertyNode[]; }[]; text?: TMXDataNode[]; } //#endregion //#region src/models/tmx/node/TMXTileNode.d.ts interface TMXTileNode extends TMXNode<TMXTileShared, TMXPropertiesNode> { animation?: Record<string, TMXNode<number>[]>[]; objectgroup?: Record<string, TMXObjectNode[]>[]; properties?: { property: TMXPropertyNode[]; }[]; } //#endregion //#region src/models/tmx/node/TMXEmbeddedTilesetNode.d.ts interface TMXEmbeddedTilesetNode extends TMXNode<TMXEmbeddedTilesetShared, TMXImageNode | TMXTileNode> { tile?: TMXTileNode[]; } //#endregion //#region src/util/isTMXEmbeddedTilesetNode.d.ts declare const isTMXEmbeddedTilesetNode: (node: TMXDataNode | TMXEmbeddedTilesetNode) => node is TMXEmbeddedTilesetNode; //#endregion //#region src/util/parseFlips.d.ts declare const parseFlips: (gid: number) => TMXFlipsParsed; //#endregion //#region src/models/tmx/node/TMXLayerNode.d.ts interface TMXLayerNode extends TMXNode<TMXLayerShared, TMXDataNode | TMXEmbeddedTilesetNode | TMXPropertiesNode> { data?: TMXDataNode[] | TMXEmbeddedTilesetNode[]; image?: TMXImageNode[]; object?: TMXObjectNode[]; properties?: { property: TMXPropertyNode[]; }[]; } //#endregion //#region src/models/tmx/node/TMXGroupLayerNode.d.ts interface TMXGroupLayerNode extends TMXNode<TMXGroupLayerShared, TMXLayerNode> { properties?: { property: TMXPropertyNode[]; }[]; } //#endregion //#region src/util/parseGroup.d.ts declare const parseGroup: (node: TMXGroupLayerNode, expectedCount: number, translateFlips: boolean) => Promise<TMXGroupLayerParsed>; //#endregion //#region src/util/parseLayer.d.ts declare const parseLayer: (node: TMXLayerNode) => TMXLayerParsed; //#endregion //#region src/util/parseNode.d.ts declare const parseNode: <TNode extends TMXGroupLayerNode | TMXLayerNode, TParsedNode = (TNode extends TMXLayerNode ? TMXLayerParsed : TMXGroupLayerParsed)>(node: TNode, expectedCount: number, translateFlips: boolean) => Promise<TParsedNode>; //#endregion //#region src/util/parseObject.d.ts declare const parseObject: (node: TMXObjectNode) => TMXObjectParsed; //#endregion //#region src/util/parseObjectShape.d.ts declare const parseObjectShape: (node: TMXObjectNode) => Shape; //#endregion //#region src/util/parseProperties.d.ts declare const parseProperties: (properties: { property: TMXPropertyNode[]; }[]) => TMXPropertiesParsed; //#endregion //#region src/util/parseTile.d.ts declare const parseTile: (node: TMXTileNode) => TMXTileParsed; //#endregion //#region src/util/parseTileId.d.ts declare const parseTileId: (gid: number) => number; //#endregion //#region src/util/parseTileLayer.d.ts declare const parseTileLayer: (node: TMXLayerNode, expectedCount: number, translateFlips: boolean) => Promise<TMXLayerParsed>; //#endregion //#region src/models/tmx/node/TMXExternalTilesetNode.d.ts interface TMXExternalTilesetNode extends TMXNode<TMXExternalTilesetShared> {} //#endregion //#region src/models/tmx/node/TMXTilesetNode.d.ts type TMXTilesetNode = TMXEmbeddedTilesetNode | TMXExternalTilesetNode; //#endregion //#region src/util/parseTileset.d.ts declare const parseTileset: (node: TMXTilesetNode) => TMXTilesetParsed; //#endregion //#region src/util/parseXmlString.d.ts declare const parseXmlString: <T extends object>(xmlString: string) => Promise<T>; //#endregion //#region src/util/parseXmlValue.d.ts declare const parseXmlValue: (value: string) => boolean | number | string; //#endregion //#region src/util/unpackTileBytes.d.ts declare const unpackTileBytes: (buffer: Buffer, expectedCount: number) => number[]; //#endregion //#region src/models/tmx/shared/TMXExportShared.d.ts interface TMXExportShared { format: string; target: string; } //#endregion //#region src/models/tmx/node/TMXExportNode.d.ts interface TMXExportNode extends TMXNode<TMXExportShared> {} //#endregion //#region src/models/tmx/node/TMXEditorSettingsNode.d.ts interface TMXEditorSettingsNode extends TMXNode<Record<string, never>, TMXExportNode> {} //#endregion //#region src/models/tmx/node/TMXMapNode.d.ts interface TMXMapNode extends TMXNode<TMXMapShared, TMXEditorSettingsNode | TMXGroupLayerNode | TMXPropertiesNode | TMXTilesetNode> {} //#endregion //#region src/models/tmx/node/TMX.d.ts interface TMX { map: TMXMapNode; } //#endregion //#region src/models/tmx/node/TMXNodeType.d.ts declare enum TMXNodeType { Data = "data", EditorSettings = "editorsettings", Export = "export", Group = "group", Image = "image", ImageLayer = "imagelayer", Layer = "layer", Object = "object", Objectgroup = "objectgroup", Properties = "properties", Property = "property", Tileset = "tileset" } //#endregion //#region src/models/tmx/parsed/TMXExportParsed.d.ts interface TMXExportParsed extends TMXExportShared {} //#endregion export { BaseTMXNode, Compression, Encoding, Flipped, Shape, TMX, TMXBaseTilesetShared, TMXDataNode, TMXEditorSettingsNode, TMXEditorSettingsParsed, TMXEmbeddedTilesetNode, TMXEmbeddedTilesetParsed, TMXEmbeddedTilesetShared, TMXExportNode, TMXExportParsed, TMXExportShared, TMXExternalTilesetNode, TMXExternalTilesetParsed, TMXExternalTilesetShared, TMXFlipsParsed, TMXGroupLayerNode, TMXGroupLayerParsed, TMXGroupLayerShared, TMXImageNode, TMXImageParsed, TMXImageShared, TMXLayerNode, TMXLayerParsed, TMXLayerShared, TMXMapNode, TMXMapParsed, TMXMapShared, TMXNode, TMXNodeType, TMXObjectNode, TMXObjectParsed, TMXObjectShared, TMXParsed, TMXPropertiesNode, TMXPropertiesParsed, TMXPropertyNode, TMXTileNode, TMXTileParsed, TMXTileShared, TMXTilesetNode, TMXTilesetParsed, isExternalTileset, isTMXEmbeddedTilesetNode, parseFlips, parseGroup, parseLayer, parseNode, parseObject, parseObjectShape, parseProperties, parseTile, parseTileId, parseTileLayer, parseTileset, parseTmx, parseXmlString, parseXmlValue, unpackTileBytes };