Component with Internalize custom data (PointCloud)


I am doing a Grasshopper plugin for PointCloud processing. Since PointCloud is not a grasshopper native data-structure I implemented basic stuff for grasshopper to define a custom parameter.

One PointCloudGHParam class
public class PointCloudGHParam : GH_PersistentGeometryParam<PointCloudGH>, IGH_PreviewObject, IGH_BakeAwareObject {...}

And another
public class PointCloudGH : GH_GeometricGoo<PointCloud>, IGH_PreviewData, IGH_BakeAwareObject {...}

I can transform, and do some basic operations with PointCloud.

However I cannot internalize data and when I copy and paste a component all the information is lost.

What would be a simplest way to internalize PointCloud inside component?
And in which classI must implement this option?