/// <reference types="node" />
import IMemory from 'modloader64_api/IMemory';
import { JSONTemplate } from 'modloader64_api/JSONTemplate';
import * as Z64API from '../../API/imports';
import Vector3 from 'modloader64_api/math/Vector3';
import { IModLoaderAPI } from 'modloader64_api/IModLoaderAPI';
export declare class Position extends JSONTemplate implements Z64API.IPosition {
    private readonly offset;
    private readonly parent;
    jsonFields: string[];
    constructor(parent: IMemory, offset?: number);
    get x(): number;
    set x(x: number);
    get y(): number;
    set y(y: number);
    get z(): number;
    set z(z: number);
    getRawPos(): Buffer;
    setRawPos(pos: Buffer): void;
    getVec3(): Vector3;
}
export declare class Rotation extends JSONTemplate implements Z64API.IRotation {
    private readonly parent;
    private readonly offset;
    jsonFields: string[];
    constructor(parent: IMemory, offset?: number);
    get x(): number;
    set x(x: number);
    get y(): number;
    set y(y: number);
    get z(): number;
    set z(z: number);
    getRawRot(): Buffer;
    setRawRot(rot: Buffer): void;
    getVec3(): Vector3;
}
export declare class ActorDeathBehavior {
    offset: number;
    behavior_calc: number;
    constructor(offset: number, behavior_calc: number);
}
export interface IActorDeathFile {
    id: number;
    death: ActorDeathBehavior;
}
export declare class ActorBase extends JSONTemplate implements Z64API.IActor {
    actorUUID: string;
    private readonly emulator;
    pointer: number;
    exists: boolean;
    rotation: Z64API.IRotation;
    position: Z64API.IPosition;
    homePos: Z64API.IPosition;
    homeRot: Z64API.IRotation;
    jsonFields: string[];
    constructor(ModLoader: IModLoaderAPI, scene: number, pointer: number);
    isTransitionActor: boolean;
    getRdramBuffer(): ArrayBuffer;
    bitCount8(value: number): number;
    bitCount16(value: number): number;
    bitCount32(value: number): number;
    bitCountBuffer(buf: Buffer, off: number, len: number): number;
    invalidateCachedCode(): void;
    get actorID(): number;
    get actorType(): Z64API.ActorCategory;
    get room(): number;
    set room(r: number);
    get renderingFlags(): number;
    set renderingFlags(flags: number);
    get variable(): number;
    get objectTableIndex(): number;
    get soundEffect(): number;
    set soundEffect(s: number);
    get health(): number;
    set health(h: number);
    get redeadFreeze(): number;
    set redeadFreeze(f: number);
    destroy(): void;
    rdramRead8(addr: number): number;
    rdramWrite8(addr: number, value: number): void;
    rdramRead16(addr: number): number;
    rdramWrite16(addr: number, value: number): void;
    rdramWrite32(addr: number, value: number): void;
    rdramRead32(addr: number): number;
    rdramReadBuffer(addr: number, size: number): Buffer;
    rdramWriteBuffer(addr: number, buf: Buffer): void;
    dereferencePointer(addr: number): number;
    rdramReadS8(addr: number): number;
    rdramReadS16(addr: number): number;
    rdramReadS32(addr: number): number;
    rdramReadBitsBuffer(addr: number, bytes: number): Buffer;
    rdramReadBits8(addr: number): Buffer;
    rdramReadBit8(addr: number, bitoffset: number): boolean;
    rdramWriteBitsBuffer(addr: number, buf: Buffer): void;
    rdramWriteBits8(addr: number, buf: Buffer): void;
    rdramWriteBit8(addr: number, bitoffset: number, bit: boolean): void;
    rdramReadPtr8(addr: number, offset: number): number;
    rdramWritePtr8(addr: number, offset: number, value: number): void;
    rdramReadPtr16(addr: number, offset: number): number;
    rdramWritePtr16(addr: number, offset: number, value: number): void;
    rdramWritePtr32(addr: number, offset: number, value: number): void;
    rdramReadPtr32(addr: number, offset: number): number;
    rdramReadPtrBuffer(addr: number, offset: number, size: number): Buffer;
    rdramWritePtrBuffer(addr: number, offset: number, buf: Buffer): void;
    rdramReadPtrS8(addr: number, offset: number): number;
    rdramReadPtrS16(addr: number, offset: number): number;
    rdramReadPtrS32(addr: number, offset: number): number;
    rdramReadPtrBitsBuffer(addr: number, offset: number, bytes: number): Buffer;
    rdramReadPtrBits8(addr: number, offset: number): Buffer;
    rdramReadPtrBit8(addr: number, offset: number, bitoffset: number): boolean;
    rdramWritePtrBitsBuffer(addr: number, offset: number, buf: Buffer): void;
    rdramWritePtrBits8(addr: number, offset: number, buf: Buffer): void;
    rdramWritePtrBit8(addr: number, offset: number, bitoffset: number, bit: boolean): void;
    rdramReadF32(addr: number): number;
    rdramReadPtrF32(addr: number, offset: number): number;
    rdramWriteF32(addr: number, value: number): void;
    rdramWritePtrF32(addr: number, offset: number, value: number): void;
    rdramRead64(addr: number): number;
    rdramReadS64(addr: number): number;
    rdramReadF64(addr: number): number;
    rdramWrite64(addr: number, val: number): void;
    rdramWriteF64(addr: number, val: number): void;
    rdramReadBigInt64(addr: number): BigInt;
    rdramReadBigIntS64(addr: number): BigInt;
    rdramWriteBigInt64(addr: number, val: BigInt): void;
    memoryDebugLogger(bool: boolean): void;
    u8: number[];
    u16: number[];
    u32: number[];
    u64: number[];
    s8: number[];
    s16: number[];
    s32: number[];
    s64: number[];
    f32: number[];
    f64: number[];
}
//# sourceMappingURL=Actor.d.ts.map