// generated by diplomat-tool import type { AnimationEffect } from "./AnimationEffect.mjs" import type { Brush } from "./Brush.mjs" import type { NucleationError } from "./NucleationError.mjs" import type { Schematic } from "./Schematic.mjs" import type { Shape } from "./Shape.mjs" import type { pointer, codepoint } from "./diplomat-runtime.d.ts"; /** * A schematic wrapper that records construction calls as animation targets. */ export class BuildAnimation { /** @internal */ get ffiValue(): pointer; /** @internal */ constructor(); static create(name: string): BuildAnimation; /** * Clone an existing schematic into one animation group. Entity-only * schematics are supported; overlapping block/entity integer positions * are rejected rather than silently dropping a model. */ static fromSchematic(schematic: Schematic): BuildAnimation; /** * Apply one effect to every existing animation group. */ animateAll(effect: AnimationEffect): void; setDefaultEffect(effect: AnimationEffect): void; /** * Apply an effect to exactly the next recorded operation or explicit group. * The returned borrowed builder enables fluent calls in every generated binding. */ withEffect(effect: AnimationEffect): BuildAnimation; setStepMs(stepMs: number): void; setStaggerTotalMs(totalMs: number): void; clearStagger(): void; /** * Shift every construction group's start time. Negative offsets let a * repeating staggered effect cross the beginning of a loop capture. */ setStaggerOffsetMs(offsetMs: number): void; /** * Capture exactly one loop period, excluding the duplicate endpoint. * The rounded frame count evenly partitions the complete period. */ setLoopPeriodMs(periodMs: number): void; clearLoopPeriod(): void; beginGroup(): void; beginKeyedGroup(key: number): void; endGroup(): number; setBlock(x: number, y: number, z: number, block: string): number; createRegion(name: string, minX: number, minY: number, minZ: number, maxX: number, maxY: number, maxZ: number): void; setBlockInRegion(region: string, x: number, y: number, z: number, block: string): number; translate(x: number, y: number, z: number, durationMs: number): void; translateRegion(region: string, x: number, y: number, z: number, durationMs: number): void; translateAll(x: number, y: number, z: number, durationMs: number): void; rotateX(degrees: number, durationMs: number): void; rotateY(degrees: number, durationMs: number): void; rotateZ(degrees: number, durationMs: number): void; rotateRegionX(region: string, degrees: number, durationMs: number): void; rotateRegionY(region: string, degrees: number, durationMs: number): void; rotateRegionZ(region: string, degrees: number, durationMs: number): void; rotateAllX(degrees: number, durationMs: number): void; rotateAllY(degrees: number, durationMs: number): void; rotateAllZ(degrees: number, durationMs: number): void; flipX(durationMs: number): void; flipY(durationMs: number): void; flipZ(durationMs: number): void; flipRegionX(region: string, durationMs: number): void; flipRegionY(region: string, durationMs: number): void; flipRegionZ(region: string, durationMs: number): void; flipAllX(durationMs: number): void; flipAllY(durationMs: number): void; flipAllZ(durationMs: number): void; stampRegion(source: Schematic, region: string, x: number, y: number, z: number, exclusions: string, durationMs: number): void; stampBox(source: Schematic, minX: number, minY: number, minZ: number, maxX: number, maxY: number, maxZ: number, x: number, y: number, z: number, exclusions: string, durationMs: number): void; setOperationGizmos(enabled: boolean): void; operationsJson(): string; frameJson(timeMs: number): string; /** * Fill a parametric shape and record its voxels as ordered groups in * the same transactional construction operation. */ fillAlongParameter(shape: Shape, brush: Brush, groupCount: number): number; addArmorStand(x: number, y: number, z: number, yaw: number, armorMaterial: string): number; animateCamera(effect: AnimationEffect, offsetMs: number): void; frameCount(fps: number, holdMs: number): number; groupCount(): number; durationMs(): number; }