import { Network } from "./network"; import { CacheFactory } from "./cache-factory"; import { StreamHead } from "./stream-head"; import { Retry } from "./retry"; declare const enum StreamType { HOLDER = "holder", CACHE = "cache", NETWORK = "network", QUEUE = "queue", CIRCUIT = "circuit", HEAD = "head", RETRY = "retry", SCHEMA_STRINGIFIER = "schema" } declare enum ConfigurableStream { HOLDER = "holder", CACHE = "cache", SCHEMA_STRINGIFIER = "schema", RETRY = "retry" } declare class StreamFactory { private readonly cacheFactory; constructor(cacheFactory: CacheFactory); create(streamType: string, configuration: T): Retry | U; createNetwork(name: string): Network; createHead(): StreamHead; } export { ConfigurableStream, StreamType, StreamFactory };