async dispose() {
            this.grid.dispose();
            this.grid = null;
            this.axes.dispose();
            this.axes = null;
            this.context.dispose();
            this.context = null;
            this.clipper.dispose();
            this.clipper = null;
            this.plans.dispose();
            this.plans = null;
            this.filler.dispose();
            this.filler = null;
            this.dimensions.dispose();
            this.dimensions = null;
            this.edges.dispose();
            this.edges = null;
            this.shadowDropper.dispose();
            this.shadowDropper = null;
            this.dxf.dispose();
            this.dxf = null;
            this.pdf.dispose();
            this.pdf = null;
            this.edgesProjector.dispose();
            this.edgesProjector = null;
            this.dropbox = null;
            this.GLTF.dispose();
            this.GLTF = null;
            await this.IFC.dispose();
            this.IFC = null;
        }
Releases all the memory allocated by IFC.js.
Use this only when deleting the ifcViewerAPI instance.
This is especially important when using libraries and frameworks that handle the lifecycle
of objects automatically (e.g. React, Angular, etc). If you are using one of these and are
instantiating webIfcViewer inside a component, make sure you use this method in the component
destruction event.