Basic Structures
PointCloud
https://pointclouds.org/documentation/classpcl_1_1_point_cloud.html
new PointCloud();
class PointCloud<T extends PointTypes = PointXYZ> {  manager: Manager;  constructor(_PT?: PointTypesTypeof, _native?: NativeAPI);  get isOrganized(): boolean;  get isDense(): boolean;  set width(v: number);  get width(): number;  set height(v: number);  get height(): number;  get header(): PCLHeader;  get size(): number;  get points(): Points<T>;  get isEmpty(): boolean;  get data(): T[];  /**   * Removes all points in a cloud and sets the width and height to 0.   */  clear(): void;  /**   * Resizes the container to contain `count` elements   * @params count - New size of the point cloud   * @params pt - The value to initialize the new points with   */  resize(count: number, pt?: T): void;  /**   * Insert a new point in the cloud, at the end of the container.   * @description This breaks the organized structure of the cloud by setting the height to 1!   * @params pt - The point to insert   */  addPoint(pt?: T | null): void;}Manager
class Manager {
  /**
   * Delete a C ++ object
   * {@link https://emscripten.org/docs/porting/connecting_cpp_and_javascript/embind.html?highlight=clone#memory-management}
   */
  delete(): void;
  isDeleted(): boolean;
  /**
   * {@link https://emscripten.org/docs/porting/connecting_cpp_and_javascript/embind.html?highlight=clone#cloning-and-reference-counting}
   * @returns A new handle
   */
  clone(): void;
}
PointType
PointXY
PointXYZ
new PointXYZ();
// Type
class PointXYZ {
  x: number;
  y: number;
  z: number;
}
PointXYZI
new PointXYZI();
// Type
class PointXYZI {
  x: number;
  y: number;
  z: number;
  intensity: number;
}
InterestPoint
PointXYZL
PointXYZRGBL
PointXYZRGB
new PointXYZRGB();
// Type
class PointXYZRGB {
  x: number;
  y: number;
  z: number;
  rgb: number;
}
PointXYZRGBA
new PointXYZRGBA();
// Type
class PointXYZRGBA {
  x: number;
  y: number;
  z: number;
  rgba: number;
}
Normal
new Normal();
// Type
class Normal {
  normalX: number;
  normalY: number;
  normalZ: number;
  curvature: number;
}
PointNormal
new PointNormal();
// Type
class PointNormal {
  x: number;
  y: number;
  z: number;
  normalX: number;
  normalY: number;
  normalZ: number;
  curvature: number;
}