import { CssTilemapRenderer } from "../render/CssTilemapRenderer"; /** * collision map with tilemap for grid system * there is limitation of tilemap size * * this component will auto generate collision map from tilemap * * coordinate system is row column (positive x is right, positive y is down) * * important: grid position data is stored as string ("x_y" format) * so this component might not work properly if this component's gameObject.position is not integer */ export declare class CssCollideTilemapRenderer extends CssTilemapRenderer { private readonly _collideMap; private _collideEnabled; onEnable(): void; onDisable(): void; /** * draw tile at position. collide info will be automatically added * @param column column in tilemap * @param row row in tilemap * @param imageIndex index of image in imageSources * @param atlasIndex index of atlas in imageSources * @returns */ drawTile(column: number, row: number, imageIndex: number, atlasIndex?: number): void; /** * draw tile from two dimensional array. collide info will be automatically added * * array left upper corner is (0, 0) in tilemap * @param array array of image index. { i: 0, a: 1 } means imageSources[0] in atlas[1] * @param xOffset array x offset, if you want to add tile from array[1][3] to (2, 3) you should set xOffset = 1 * @param yOffset array y offset, if you want to add tile from array[3][1] to (3, 2) you should set yOffset = 1 * @returns */ drawTileFromTwoDimensionalArray(array: ({ i: number; a: number; } | null)[][], columnOffset: number, rowOffset: number): void; /** * clear tile at position. collide info will be automatically removed * @param column column in tilemap * @param row row in tilemap * @returns */ clearTile(column: number, row: number): void; /** * add collider at position * @param column column in tilemap * @param row row in tilemap * @returns */ addCollider(column: number, row: number): void; /** * query that collides at position * @param x world position x * @param y world position y * @param width aabb collision width * @param height aabb collision height * @returns */ checkCollision(x: number, y: number, width: number, height: number): boolean; }