@nativescript-community/ui-carto
Version:
NativeScript plugin for CARTO Mobile SDK
47 lines (44 loc) • 1.73 kB
TypeScript
import { Color, ImageAsset, ImageSource } from '@nativescript/core';
import { BaseBillboardVectorElement, BillboardOrientation, BillboardScaling, BillboardStyleBuilder, BillboardStyleBuilderOptions, BillboardVectorElementOptions } from '.';
import { DefaultLatLonKeys } from '../core';
import { Geometry } from '../geometry';
export class MarkerStyleBuilderOptions extends BillboardStyleBuilderOptions {
size?: number;
bitmap?: string | ImageSource | ImageAsset;
color?: string | Color;
clickSize?: number;
scalingMode?: BillboardScaling;
orientationMode?: BillboardOrientation;
}
export class MarkerStyleBuilder extends BillboardStyleBuilder<any, MarkerStyleBuilderOptions> {
width: number;
hideIfOverlapped: boolean;
scaleWithDPI: boolean;
size: number;
placementPriority: number;
color: Color | string;
bitmap: string;
anchorPointX: number;
anchorPointY: number;
clickSize: number;
scalingMode: BillboardScaling;
orientationMode: BillboardOrientation;
}
export class MarkerOptions<T = DefaultLatLonKeys> extends BillboardVectorElementOptions<T> {
styleBuilder?: MarkerStyleBuilder | MarkerStyleBuilderOptions;
geometry?: Geometry<T>;
}
export class Marker<T = DefaultLatLonKeys> extends BaseBillboardVectorElement<any, MarkerOptions<T>, T> {
styleBuilder?: MarkerStyleBuilder | MarkerStyleBuilderOptions;
geometry?: Geometry<T>;
style?: any;
size?: number;
placementPriority?: number;
bitmap?: string | ImageSource | ImageAsset;
color?: string | Color;
anchorPointX?: number;
anchorPointY?: number;
clickSize?: number;
scalingMode?: BillboardScaling;
orientationMode?: BillboardOrientation;
}