@duydang2311/ragemp-utils-client
Version:
A collection of utilities for RAGE Multiplayer JavaScript module.
74 lines (69 loc) • 2.93 kB
text/typescript
import { StreamedMetaSchema } from '@duydang2311/ragemp-utils-meta';
import { EntityType } from '@duydang2311/ragemp-utils-shared';
interface LocalMarker {
type: RageEnums.Markers;
position: IVector3;
destination: IVector3;
rotation: IVector3;
scale: IVector3;
radius: number;
color: RGBA;
bobUpAndDown: boolean;
faceCamera: boolean;
rotate: boolean;
textureDict: string | null;
textureName: string | null;
drawOnEnts: boolean;
render(): void;
}
declare class RageMpLocalMarker implements LocalMarker {
#private;
constructor(type: RageEnums.Markers, position: IVector3, destination: IVector3, rotation: IVector3, scale: IVector3, radius: number, color: RGBA, bobUpAndDown?: boolean, faceCamera?: boolean, rotate?: boolean, textureDict?: string | null, textureName?: string | null, drawOnEnts?: boolean);
get type(): number;
get position(): IVector3;
get destination(): IVector3;
get rotation(): IVector3;
get scale(): IVector3;
get radius(): number;
get color(): RGBA;
get bobUpAndDown(): boolean;
get faceCamera(): boolean;
get rotate(): boolean;
get textureDict(): string | null;
get textureName(): string | null;
get drawOnEnts(): boolean;
set type(value: number);
set position(value: IVector3);
set destination(value: IVector3);
set rotation(value: IVector3);
set scale(value: IVector3);
set radius(value: number);
set color(value: RGBA);
set bobUpAndDown(value: boolean);
set faceCamera(value: boolean);
set rotate(value: boolean);
set textureDict(value: string | null);
set textureName(value: string | null);
set drawOnEnts(value: boolean);
render(): void;
}
type StreamedMetaOnChangeFn<V> = (entity: EntityMp, currentValue: V | undefined, previousValue: V | undefined) => void;
interface StreamedMetaStore {
init(): void;
on<K extends keyof StreamedMetaSchema, V extends StreamedMetaSchema[K]>(eventName: 'change', name: K, fn: StreamedMetaOnChangeFn<V>): () => void;
}
interface CreateRageMpStreamedMetaStoreOptions {
entityTypes?: Exclude<EntityType, 'blip' | 'dummy'>[];
changeEventName?: string;
streamedInEventName?: string;
streamedOutEventName?: string;
debug?: boolean;
}
declare class RageMpStreamedMetaStore implements StreamedMetaStore {
#private;
constructor(options?: CreateRageMpStreamedMetaStoreOptions);
init(): void;
on<K extends keyof StreamedMetaSchema, V extends StreamedMetaSchema[K]>(eventName: 'change', name: K, fn: StreamedMetaOnChangeFn<V>): () => void;
}
declare const renderPromise: <T>(fn: (resolve: (value: T | PromiseLike<T>) => void, reject: (reason?: any) => void) => void) => Promise<T>;
export { type CreateRageMpStreamedMetaStoreOptions, type LocalMarker, RageMpLocalMarker, RageMpStreamedMetaStore, type StreamedMetaOnChangeFn, type StreamedMetaStore, renderPromise };