import type { IAttributeScale, IStyleAttribute, StyleScaleType } from '../layer/IStyleAttributeService'; import type { IAttribute } from '../renderer/IAttribute'; import type { AttributeType, IEncodeFeature, IFeatureRange, IStyleAttributeInitializationOptions, IVertexAttributeDescriptor } from './IStyleAttributeService'; export default class StyleAttribute implements IStyleAttribute { name: string; type: AttributeType; scale?: { type: StyleScaleType.CONSTANT; names: string[]; field: string | string[]; values: unknown[]; defaultValues: unknown[]; callback?: (...args: any[]) => []; scalers?: IAttributeScale[]; }; descriptor: IVertexAttributeDescriptor; featureBufferLayout: Array<{ feature: IEncodeFeature; featureIdx: number; bufferOffset: number; length: number; }>; needRescale: boolean; needRemapping: boolean; needRegenerateVertices: boolean; featureRange: IFeatureRange; vertexAttribute: IAttribute; constructor(options: Partial); setProps(options: Partial): void; mapping(params: unknown[]): unknown[]; resetDescriptor(): void; private defaultCallback; }