/**
 * RegionInfo 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 { Bool, F32, U64, UUID, Variable1 } from "../types";
import { type PacketMetadata } from "./packet";
export interface RegionInfoData {
    agentData?: {
        agentId?: string;
        sessionId?: string;
    };
    regionInfo?: {
        simName: string | Buffer;
        estateId: number;
        parentEstateId: number;
        regionFlags: number;
        simAccess: number;
        maxAgents: number;
        billableFactor: number;
        objectBonusFactor: number;
        waterHeight: number;
        terrainRaiseLimit: number;
        terrainLowerLimit: number;
        pricePerMeter: number;
        redirectGridX: number;
        redirectGridY: number;
        useEstateSun: boolean;
        sunHour: number;
    };
    regionInfo2?: {
        productSku: string | Buffer;
        productName: string | Buffer;
        maxAgents32: number;
        hardMaxAgents: number;
        hardMaxObjects: number;
    };
    regionInfo3?: {
        regionFlagsExtended: number | bigint;
    }[];
    regionInfo5?: {
        chatWhisperRange: number;
        chatNormalRange: number;
        chatShoutRange: number;
        chatWhisperOffset: number;
        chatNormalOffset: number;
        chatShoutOffset: number;
        chatFlags: number;
    }[];
}
export declare const regionInfoMetadata: {
    id: number;
    name: string;
    frequency: 2;
    compression: true;
    blocks: ({
        name: string;
        parameters: [string, typeof UUID][];
        multiple?: undefined;
    } | {
        name: string;
        parameters: ([string, typeof Variable1] | [string, typeof Bool] | [string, typeof F32])[];
        multiple?: undefined;
    } | {
        name: string;
        parameters: [string, typeof U64][];
        multiple: true;
    } | {
        name: string;
        parameters: [string, typeof F32][];
        multiple: true;
    })[];
};
export declare const regionInfo: (data: RegionInfoData, reliable?: boolean) => {
    data: RegionInfoData;
    reliable: boolean | undefined;
    metadata: PacketMetadata;
};
export declare const createRegionInfoDelegate: (config: Omit<import("..").DelegateConfig<RegionInfoData>, "metadata">) => void;
