/**
* Three side-by-side number fields, each with a short leading caption (e.g. X/Y/Z, R/G/B, or any strings).
*/
export type Vec3FieldOptions = {
/** Caption shown before each value (three slots). */
labels: readonly [string, string, string];
/** When true, values are display-only (`readOnly` inputs, muted styling). */
readOnly?: boolean;
onChange?: () => void;
/** Passed to each `` when set. */
step?: string;
};
export type Vec3Field = {
root: HTMLDivElement;
inputs: [HTMLInputElement, HTMLInputElement, HTMLInputElement];
};
/**
* One slot with the same DOM/classes as each column in {@link createVec3Field}
* (`prop-vec3-field__slot` + label strip + `prop-vec3-field__input`).
* Caller configures the input (step, disabled, listeners); this only builds the shell.
*/
export declare function createVec3StyleSlot(label: string, input: HTMLInputElement): HTMLDivElement;
/** Same shell as {@link createVec3StyleSlot} but for a `