import { Dictionary, Producer, Transform } from "../../types/types"; import { OmniSequence } from "../../types/sequence/omni-sequence"; /** * Yields all own-property names in an object. */ export declare function keys(object: Dictionary): OmniSequence; /** * Yields all key-value pairs in an object. */ export declare function pairs(object: Dictionary): OmniSequence<[string, V]>; /** * Yields all integers from zero to **end**. Does not include **end**. */ export declare function range(end: number): OmniSequence; /** * Yields all numbers from **start** to **end** with a step size of one. Does not include **end**. Throws an error * if **start** is greater than **end**. */ export declare function range(start: number, end: number): OmniSequence; /** * Yields all numbers from **start** to **end** with a provided **step** size. Does not include **end**. Throws an * error if **start** is greater than **end** or the **step** size is zero. */ export declare function range(start: number, end: number, step: number): OmniSequence; /** * Yields the values of all own-properties in an **object**. */ export declare function values(object: Dictionary): OmniSequence; /** * Yields an infinite sequence where each element is generated by a **producer** function. */ export declare function sequence(producer: Producer): OmniSequence; /** * Yields an infinite sequence where each element is generated by passing the previous element into the **next** * transform function. The **initial** value will be the first value passed into **next**. */ export declare function sequence(initial: T, next: Transform): OmniSequence;