import { ObjectMaterialSize, ObjectMaterialTextAlignments, Player, Position, Vehicle } from "@sa-mp/core"; import { DynamicArea, DynamicObject, StreamerItem } from ".."; export interface DynamicObjectOptions extends Position { model: number; rot: Position; world?: number; interior?: number; player?: Player; streamDistance?: number; drawDistance?: number; area?: DynamicArea; priority?: number; attach?: DynamicObjectAttachOptions; } export interface MoveDynamicObjectOptions extends Position { speed: number; rot?: Position; } export interface DynamicObjectAttachOptions { offset: Position; rot: Position; syncRotation?: boolean; } export interface GetDynamicObjectMaterialOptions { index: number; maxTxdName: number; maxTextureName: number; } export interface GetDynamicObjectMaterialResult { model: number; txdName: string; textureName: string; color: number; } export interface DynamicObjectMaterialOptions { index: number; model: number; txdName: string; textureName: string; color?: number; } export interface GetDynamicObjectMaterialTextOptions { index: number; maxText: number; maxFontFace: number; } export interface GetDynamicObjectMaterialTextResult { text: string; size: ObjectMaterialSize; fontFace: string; fontSize: number; bold: boolean; color: number; backgroundColor: number; align: ObjectMaterialTextAlignments; } export interface DynamicObjectMaterialTextOptions { index: number; text: string; size?: ObjectMaterialSize; fontFace?: string; fontSize?: number; bold?: boolean; color?: number; backgroundColor?: number; align?: ObjectMaterialTextAlignments; } export declare class DynamicObjectFunctions { readonly idOrOptions: number | DynamicObjectOptions; static create(options: DynamicObjectOptions): DynamicObject; static getById(id: number): DynamicObject; static isValid(object: DynamicObject): boolean; static destroyAll(): void; static get count(): number; id: number; constructor(idOrOptions: number | DynamicObjectOptions); create(): DynamicObject; destroy(): void; get pos(): Position; set pos({ x, y, z }: Position); get rot(): Position; set rot({ x, y, z }: Position); noCameraCol(): boolean; getNoCameraCol(): boolean; move({ x, y, z, speed, rot }: MoveDynamicObjectOptions): void; stop(): void; moving(): boolean; attach(attached: DynamicObject | Player | Vehicle, options?: DynamicObjectAttachOptions): void; edit(player: Player): void; isMaterialUsed(index: number): boolean; removeMaterial(index: number): void; getMaterial({ index, maxTxdName, maxTextureName }: GetDynamicObjectMaterialOptions): GetDynamicObjectMaterialResult; material({ index, model, txdName, textureName, color }: DynamicObjectMaterialOptions): void; isMaterialTextUsed(index: number): boolean; removeMaterialText(index: number): void; getMaterialText({ index, maxText, maxFontFace }: GetDynamicObjectMaterialTextOptions): GetDynamicObjectMaterialTextResult; materialText({ index, text, size, fontFace, fontSize, bold, color, backgroundColor, align }: DynamicObjectMaterialTextOptions): void; get item(): StreamerItem; is(object: DynamicObject): boolean; }