/**
 * Semi-Lagrangian advection of a scalar field by a separate velocity field.
 *
 * For each cell, traces backward by `(vel_x, vel_y, vel_z) * time_delta` and trilinearly
 * samples the input scalar at the back-traced position. Unconditionally stable for any
 * timestep. Used to transport densities, temperatures, or any passive quantity by the
 * flow.
 *
 * @param {Float32Array} output       Destination, mutated. Length = res_x*res_y*res_z.
 * @param {Float32Array} input        Scalar values to advect. Must not alias `output`.
 * @param {Float32Array} vel_x        Velocity X component (cell-centered).
 * @param {Float32Array} vel_y        Velocity Y component (cell-centered).
 * @param {Float32Array} vel_z        Velocity Z component (cell-centered).
 * @param {number} res_x
 * @param {number} res_y
 * @param {number} res_z
 * @param {number} time_delta
 * @param {Uint8Array} solid          Required cell flags (zero-filled for a wall-free
 *                                    domain); solid cells get their input value
 *                                    passed through unchanged.
 */
export function v3_grid_apply_scalar_advection(output: Float32Array, input: Float32Array, vel_x: Float32Array, vel_y: Float32Array, vel_z: Float32Array, res_x: number, res_y: number, res_z: number, time_delta: number, solid: Uint8Array): void;
//# sourceMappingURL=v3_grid_apply_scalar_advection.d.ts.map