import type { Middleware, StoreEnhancer } from 'redux'; export declare function getTimeMeasureUtils(maxDelay: number, fnName: string): { measureTime(fn: () => T): T; warnIfExceeded(): void; }; export declare function delay(ms: number): Promise; /** * @public */ export declare class MiddlewareArray[]> extends Array { constructor(...items: Middlewares); static get [Symbol.species](): any; concat>>(items: AdditionalMiddlewares): MiddlewareArray<[...Middlewares, ...AdditionalMiddlewares]>; concat>>(...items: AdditionalMiddlewares): MiddlewareArray<[...Middlewares, ...AdditionalMiddlewares]>; prepend>>(items: AdditionalMiddlewares): MiddlewareArray<[...AdditionalMiddlewares, ...Middlewares]>; prepend>>(...items: AdditionalMiddlewares): MiddlewareArray<[...AdditionalMiddlewares, ...Middlewares]>; } /** * @public */ export declare class EnhancerArray[]> extends Array { constructor(...items: Enhancers); static get [Symbol.species](): any; concat>>(items: AdditionalEnhancers): EnhancerArray<[...Enhancers, ...AdditionalEnhancers]>; concat>>(...items: AdditionalEnhancers): EnhancerArray<[...Enhancers, ...AdditionalEnhancers]>; prepend>>(items: AdditionalEnhancers): EnhancerArray<[...AdditionalEnhancers, ...Enhancers]>; prepend>>(...items: AdditionalEnhancers): EnhancerArray<[...AdditionalEnhancers, ...Enhancers]>; } export declare function freezeDraftable(val: T): T;