/** * Sum of array elements with optional NaN-skipping. * When `skipna` is true (default) NaNs are ignored; returns NaN if no valid samples. * Uses a fast dense path when global optimization allows it. * @param source Input array * @param skipna Whether to ignore NaNs (default: true) * @returns Sum or NaN */ export declare function sum(source: ArrayLike, skipna?: boolean): number; /** * Cumulative sum preserving NaNs: NaN entries do not increase the running sum * but are represented as the running total up to that point. * @param source Input array * @returns Float64Array of cumulative sums */ export declare function cumsum(source: ArrayLike): Float64Array; /** * Rolling sum over a window with optional NaN-skipping. * If `skipna` is true, windows with no valid values produce NaN. * Supports a fast dense path when inputs contain no NaNs. * @param source Input array * @param period Window length (must be > 0) * @param skipna Whether to ignore NaNs (default: true) * @returns Float64Array of rolling sums (NaN for positions before window fills) */ export declare function rollsum(source: ArrayLike, period: number, skipna?: boolean): Float64Array;