import { Effect } from "@effect/core/io/Effect/definition";
/**
 * @tsplus type ets/CancelerState
 */
export declare type CancelerState = Empty | Pending | Registered;
/**
 * @tsplus type ets/CancelerState/Ops
 */
export interface CancelerStateOps {
}
export declare const CancelerState: CancelerStateOps;
export interface Empty {
    readonly _tag: "Empty";
}
export interface Pending {
    readonly _tag: "Pending";
}
export interface Registered {
    readonly _tag: "Registered";
    readonly asyncCanceler: Effect<any, any, any>;
}
/**
 * @tsplus static ets/CancelerState/Ops Empty
 * @tsplus location "@effect/core/io/Fiber/_internal/cancelerState"
 */
export declare const empty: CancelerState;
/**
 * @tsplus static ets/CancelerState/Ops Pending
 * @tsplus location "@effect/core/io/Fiber/_internal/cancelerState"
 */
export declare const pending: CancelerState;
/**
 * @tsplus static ets/CancelerState/Ops Registered
 * @tsplus location "@effect/core/io/Fiber/_internal/cancelerState"
 */
export declare function registered(asyncCanceler: Effect<any, any, any>): CancelerState;
//# sourceMappingURL=cancelerState.d.ts.map