import type { Exit } from "../Exit/exit.js"; import type { Effect } from "./effect.js"; /** * Acquires a resource, uses the resource, and then releases the resource. * Neither the acquisition nor the release will be interrupted, and the * resource is guaranteed to be released, so long as the `acquire` effect * succeeds. If `use` fails, then after release, the returned effect will fail * with the same error. * * @ets_data_first bracketExit_ */ export declare function bracketExit(use: (a: A) => Effect, release: (a: A, e: Exit) => Effect, __trace?: string): (acquire: Effect) => Effect; /** * Acquires a resource, uses the resource, and then releases the resource. * Neither the acquisition nor the release will be interrupted, and the * resource is guaranteed to be released, so long as the `acquire` effect * succeeds. If `use` fails, then after release, the returned effect will fail * with the same error. */ export declare function bracketExit_(acquire: Effect, use: (a: A) => Effect, release: (a: A, e: Exit) => Effect, __trace?: string): Effect; //# sourceMappingURL=bracketExit.d.ts.map