import { Awaitable } from '@miniflare/shared'; import { BindingsPlugin } from '@miniflare/core'; import { CachePlugin } from '@miniflare/cache'; import { Context } from '@miniflare/shared'; import { CorePlugin } from '@miniflare/core'; import { D1Plugin } from '@miniflare/d1'; import { DurableObject } from '@miniflare/durable-objects'; import { DurableObjectId } from '@miniflare/durable-objects'; import { DurableObjectsPlugin } from '@miniflare/durable-objects'; import { DurableObjectState } from '@miniflare/durable-objects'; import { DurableObjectStorage } from '@miniflare/durable-objects'; import { FetchEvent } from '@miniflare/core'; import { HTMLRewriterPlugin } from '@miniflare/html-rewriter'; import { KVPlugin } from '@miniflare/kv'; import { kWaitUntil } from '@miniflare/core'; import { MemoryStorage } from '@miniflare/storage-memory'; import { MiniflareCore } from '@miniflare/core'; import { MiniflareCoreContext } from '@miniflare/core'; import { MiniflareCoreOptions } from '@miniflare/core'; import { MockAgent } from 'undici'; import { QueuesPlugin } from '@miniflare/queues'; import { R2Plugin } from '@miniflare/r2'; import { ScheduledEvent } from '@miniflare/core'; import { SitesPlugin } from '@miniflare/sites'; import { Storage } from '@miniflare/shared'; import { StorageFactory } from '@miniflare/shared'; import { WebSocketPlugin } from '@miniflare/web-sockets'; export declare function createMiniflareEnvironment(ctx: Pick, options: MiniflareCoreOptions, globalOverrides?: Context): Promise<[mf: MiniflareCore, globals: Context]>; export declare class ExecutionContext { [kWaitUntil]: Promise[]; passThroughOnException(): void; waitUntil(promise: Promise): void; } export declare interface MiniflareEnvironmentUtilities { getMiniflareBindings(): Bindings; getMiniflareDurableObjectStorage(id: DurableObjectId): Promise; getMiniflareDurableObjectState(id: DurableObjectId): Promise; getMiniflareDurableObjectInstance(id: DurableObjectId): Promise; runWithMiniflareDurableObjectGates(state: DurableObjectState, closure: () => Awaitable): Promise; getMiniflareFetchMock(): MockAgent; getMiniflareWaitUntil(event: FetchEvent | ScheduledEvent | ExecutionContext): Promise; flushMiniflareDurableObjectAlarms(ids: DurableObjectId[]): Promise; getMiniflareDurableObjectIds(namespace: string): Promise; } export declare const PLUGINS: { CorePlugin: typeof CorePlugin; KVPlugin: typeof KVPlugin; D1Plugin: typeof D1Plugin; R2Plugin: typeof R2Plugin; DurableObjectsPlugin: typeof DurableObjectsPlugin; CachePlugin: typeof CachePlugin; SitesPlugin: typeof SitesPlugin; QueuesPlugin: typeof QueuesPlugin; HTMLRewriterPlugin: typeof HTMLRewriterPlugin; WebSocketPlugin: typeof WebSocketPlugin; BindingsPlugin: typeof BindingsPlugin; }; export declare class StackedMemoryStorage extends MemoryStorage { private readonly stack; private readonly transactionStack; push(): void; pop(): void; } export declare class StackedMemoryStorageFactory implements StorageFactory { private readonly storages; storage(namespace: string, persist?: boolean | string): Storage; push(): void; pop(): void; } export { }