@communityox/ox_core
Version:
A modern FiveM framework.
55 lines (54 loc) • 2.84 kB
TypeScript
import { ClassInterface } from 'classInterface';
import type { Character, Dict, NewCharacter, PlayerMetadata, CharacterLicense, BanDetails } from '../../types';
export declare class OxPlayer extends ClassInterface {
#private;
source: number | string;
userId: number;
charId?: number;
stateId?: string;
username: string;
identifier: string;
ped: number;
protected static members: Dict<OxPlayer>;
protected static keys: Dict<Dict<OxPlayer>>;
static get(id: string | number): OxPlayer;
static getFromUserId(id: number): OxPlayer;
static getFromCharId(id: number): OxPlayer;
static formatBanReason(ban: BanDetails): string;
private filter;
static getFromFilter(filter: Dict<any>): OxPlayer | undefined;
static getAll(filter?: Dict<any>, asArray?: false): Dict<OxPlayer>;
static getAll(filter?: Dict<any>, asArray?: true): OxPlayer[];
static saveAll(kickWithReason?: string): void;
constructor(source: number);
emit(eventName: string, ...args: any[]): void;
set<K extends string>(key: K | keyof PlayerMetadata, value: K extends keyof PlayerMetadata ? PlayerMetadata[K] : any, replicated?: boolean): void;
get<K extends string>(key: K | keyof PlayerMetadata): K extends keyof PlayerMetadata ? PlayerMetadata[K] : any;
payInvoice(invoiceId: number): Promise<{
success: boolean;
message?: string;
} | undefined>;
setActiveGroup(groupName?: string, temp?: boolean): boolean;
setGroup(groupName: string, grade?: number, force?: boolean): Promise<boolean | void>;
getGroup(filter: string): number;
getGroup(filter: string[] | Record<string, number>): [string, number] | [];
getGroupByType(type: string): [] | [string, number];
getGroups(): Dict<number>;
hasPermission(permission: string): boolean;
setStatus(statusName: string, value?: number): true | undefined;
getStatus(statusName: string): number;
getStatuses(): Dict<number>;
addStatus(statusName: string, value: number): true | undefined;
removeStatus(statusName: string, value: number): true | undefined;
getLicense(licenseName: string): CharacterLicense;
getLicenses(): Dict<CharacterLicense>;
addLicense(licenseName: string): Promise<boolean>;
removeLicense(licenseName: string): Promise<boolean>;
updateLicense(licenseName: string, key: string, value: any): Promise<boolean>;
save(): Promise<number> | Promise<import("mariadb").UpsertResult | import("mariadb").UpsertResult[]> | undefined;
setAsJoined(): Promise<void>;
logout(save?: boolean, dropped?: boolean): Promise<void>;
createCharacter(data: NewCharacter): Promise<number | undefined>;
setActiveCharacter(data: number | NewCharacter): Promise<Character | undefined>;
deleteCharacter(charId: number): Promise<true | undefined>;
}