import phin from "phin";
declare const delay = 1000;
/**
 * delay stuff
 * @param ms
 * @returns Promise<T>
 */
export declare function rateLimit(ms: number): Promise<void>;
/**
 * Call api and return the response
 * @param {string} url some endpoint
 * @param {object} auth authorization
 * @param {string} method GET, POST, PUT, DELETE
 * @param {object} data data to send
 * @returns {Promise<object>}
 */
export declare function request(url: string, auth: object, method: string, data?: object): Promise<phin.IJSONResponse<unknown>>;
/**
 * loop with interval
 * @param {Function} callback
 * @param {number} delay
 * @returns {Promise<void>}
 */
export declare function loopInterval(callback: Function, delay: number): Promise<number>;
/**
 * loop with count
 * @param callback
 * @param delay
 * @param times
 * @returns {Promise<void>}
 */
export declare function loopCount(callback: Function, delay: number, times: number): Promise<void>;
export { delay };
