/**
 * ViewerStats Packet
 *
 * This file is used to help our packet serialization and deserialization
 * process, and to create new packets on the fly.
 *
 * ⚠️ Do not edit this file manually, it is generated by the `codegen` script!
 *
 * @see {@link http://wiki.secondlife.com/wiki/Message_Layout}
 */
import { F32, F64, IP, U32, Variable1 } from "../types";
import { type PacketMetadata } from "./packet";
export interface ViewerStatsData {
    agentData: {
        agentId?: string;
        sessionId?: string;
        ip: IP;
        startTime: number;
        runTime: number;
        simFps: number;
        fps: number;
        agentsInView: number;
        ping: number;
        metersTraveled: number;
        regionsVisited: number;
        sysRam: number;
        sysOs: string | Buffer;
        sysCpu: string | Buffer;
        sysGpu: string | Buffer;
    };
    downloadTotals?: {
        world: number;
        objects: number;
        textures: number;
    };
    netStats?: {
        bytes: number;
        packets: number;
        compressed: number;
        savings: number;
    }[];
    failStats?: {
        sendPacket: number;
        dropped: number;
        resent: number;
        failedResends: number;
        offCircuit: number;
        invalid: number;
    };
    miscStats?: {
        type: number;
        value: number;
    }[];
}
export declare const viewerStatsMetadata: {
    id: number;
    name: string;
    frequency: 2;
    compression: true;
    blocks: ({
        name: string;
        parameters: ([string, typeof Variable1] | [string, typeof IP] | [string, typeof F32])[];
        multiple?: undefined;
        size?: undefined;
    } | {
        name: string;
        parameters: [string, typeof U32][];
        multiple: true;
        size: number;
    } | {
        name: string;
        parameters: ([string, typeof U32] | [string, typeof F64])[];
        multiple: true;
        size?: undefined;
    })[];
};
export declare const viewerStats: (data: ViewerStatsData, reliable?: boolean) => {
    data: ViewerStatsData;
    reliable: boolean | undefined;
    metadata: PacketMetadata;
};
export declare const createViewerStatsDelegate: (config: Omit<import("..").DelegateConfig<ViewerStatsData>, "metadata">) => void;
