import { Exit } from "@effect/core/io/Exit/definition"; import { Effect } from "@effect/core/io/Effect/definition"; import { Tag } from "@tsplus/stdlib/service/Tag"; export declare const ScopeSym: unique symbol; export type ScopeSym = typeof ScopeSym; export declare const CloseableScopeSym: unique symbol; export type CloseableScopeSym = typeof CloseableScopeSym; export declare namespace Scope { type Finalizer = (exit: Exit) => Effect; type Closeable = CloseableScope; } /** * A `Scope` is the foundation of safe, composable resource management in ZIO. A * scope has two fundamental operators, `addFinalizer`, which adds a finalizer * to the scope, and `close`, which closes a scope and runs all finalizers that * have been added to the scope. * * @tsplus type effect/core/io/Scope */ export interface Scope { readonly [ScopeSym]: ScopeSym; } /** * @tsplus type effect/core/io/Scope/Closeable */ export interface CloseableScope extends Scope { readonly [CloseableScopeSym]: CloseableScopeSym; } /** * @tsplus type effect/core/io/Scope.Ops */ export interface ScopeOps { $: ScopeAspects; Tag: Tag; } export declare const Scope: ScopeOps; /** * @tsplus type effect/core/io/Scope.Aspects */ export interface ScopeAspects { } //# sourceMappingURL=definition.d.ts.map