import { AtomicReference } from "@tsplus/stdlib/data/AtomicReference"; import { Maybe } from "@tsplus/stdlib/data/Maybe/definition"; import { Ref } from "@effect/core/io/Ref/definition"; import { Effect } from "@effect/core/io/Effect/definition"; import { _A, RefSym } from "@effect/core/io/Ref/definition"; export declare class UnsafeAPI { readonly value: AtomicReference; constructor(value: AtomicReference); get get(): A; getAndSet(a: A): A; getAndUpdate(f: (a: A) => A): A; getAndUpdateSome(pf: (a: A) => Maybe): A; modify(f: (a: A) => readonly [B, A]): B; modifySome(fallback: B, pf: (a: A) => Maybe): B; set(a: A): void; update(f: (a: A) => A): void; updateAndGet(f: (a: A) => A): A; updateSome(pf: (a: A) => Maybe): void; updateSomeAndGet(pf: (a: A) => Maybe): A; } export declare class AtomicInternal implements Ref { readonly unsafe: UnsafeAPI; constructor(unsafe: UnsafeAPI); get [_A](): (_: never) => A; /** * Internal Discriminator */ get [RefSym](): RefSym; get get(): Effect; modify(this: this, f: (a: A) => readonly [B, A]): Effect; set(this: this, a: A): Effect; getAndSet(this: this, a: A): Effect; getAndUpdate(this: this, f: (a: A) => A): Effect; getAndUpdateSome(this: this, pf: (a: A) => Maybe): Effect; modifySome(this: this, fallback: B, pf: (a: A) => Maybe): Effect; update(this: this, f: (a: A) => A): Effect; updateAndGet(this: this, f: (a: A) => A): Effect; updateSome(this: this, pf: (a: A) => Maybe): Effect; updateSomeAndGet(this: this, pf: (a: A) => Maybe): Effect; } //# sourceMappingURL=AtomicInternal.d.ts.map