All files / core/src/types GeometryLoaderFn.ts

0% Statements 0/0
0% Branches 0/0
0% Functions 0/0
0% Lines 0/0

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29                                                         
import type IGeometry from './IGeometry';
 
/**
 * Any geometryLoader function should implement a loading given the geometryId
 * and returns a mandatory promise which will resolve to the loaded geometry object.
 * Additional `cancelFn` and `decache` can be implemented.
 */
type GeometryLoaderFn = (
  geometryId: string,
  options?: Record<string, unknown>,
  loaderOptions?: GeometryLoaderOptions
) => {
  /** promise that resolves to the geometry object */
  promise: Promise<IGeometry>;
  /** cancel function */
  cancelFn?: () => void | undefined;
  /** decache function */
  decache?: () => void | undefined;
};
 
export interface GeometryLoaderOptions {
  beforeSend?: (
    xhr: XMLHttpRequest,
    defaultHeaders: Record<string, string>
  ) => Promise<Record<string, string> | void> | Record<string, string> | void;
}
 
export type { GeometryLoaderFn as default };