@gwigz/homunculus-core
Version:
A third-party framework for interacting with Linden Lab's virtual world "Second Life"
42 lines (41 loc) • 1.21 kB
TypeScript
import type { Client } from "../client";
import { Vector3 } from "../network";
import type { Entity } from "../structures";
export declare class Agent {
private readonly client;
readonly key: string;
firstName?: string;
lastName?: string;
entity?: Entity;
/**
* The coarse location of the agent, used by the viewer for minimap.
*
* It is not accurate, should only be used if we have no entity, which
* also would suggest that the agent is not nearby.
*/
coarseLocation?: Vector3;
/**
* @internal
*/
constructor(client: Client, key: string, entity?: Entity);
get id(): number | undefined;
get name(): string | undefined;
get distance(): number;
/**
* Attempts to fetch avatar details (such as name, etc.) from cache, or server.
*/
init(): Promise<void>;
/**
* Attempts to update avatar details (such as name, etc.) cache.
*/
update(profile: Partial<{
firstName: string;
lastName: string;
}>): Promise<void>;
/**
* Sends an instant message to the agent.
*
* @param message The message to send.
*/
message(message: string): Promise<void[]>;
}