import { default as BinaryStream } from '../../../../jsbinaryutils/src/index.ts';
import { default as UUID } from '../../utils/UUID';
import { default as Skin } from '../../utils/skin/Skin';
import { default as DataPacket } from './DataPacket';
interface PlayerListData {
    uuid: UUID;
    runtimeId?: bigint | null;
    name?: string | null;
    xuid?: string;
    platformChatId?: string | null;
    buildPlatform?: number | null;
    skin?: Skin | null;
    isTeacher?: boolean;
    isHost?: boolean;
    isSubClient?: boolean;
}
export declare class PlayerListEntry {
    private readonly uuid;
    private readonly runtimeId;
    private readonly name;
    private readonly xuid;
    private readonly platformChatId;
    private readonly buildPlatform;
    private readonly skin;
    private readonly teacher;
    private readonly host;
    constructor({ uuid, runtimeId, name, xuid, platformChatId, buildPlatform, skin, isTeacher, isHost }: PlayerListData);
    networkSerialize(stream: BinaryStream): void;
    getUUID(): UUID;
    getRuntimeId(): bigint | null;
    getName(): string | null;
    getXUID(): string;
    getPlatformChatId(): string | null;
    getBuildPlatform(): number | null;
    getSkin(): Skin | null;
    isTeacher(): boolean;
    isHost(): boolean;
}
export declare enum PlayerListAction {
    TYPE_ADD = 0,
    TYPE_REMOVE = 1
}
export default class PlayerListPacket extends DataPacket {
    static NetID: number;
    entries: PlayerListEntry[];
    type: number;
    encodePayload(): void;
}
export {};
//# sourceMappingURL=PlayerListPacket.d.ts.map