import { STM } from "@effect/core/stm/STM/definition/base"; import type { STMTypeId } from "@effect/core/stm/STM"; type NonEmptyArraySTM = Array> & { readonly 0: STM; }; export type TupleA = { [K in keyof T]: [T[K]] extends [STM] ? A : never; }; /** * Like `forEach` + `identity` with a tuple type. * @tsplus static effect/core/stm/STM.Ops tuple * @tsplus location "@effect/core/stm/STM/operations/tuple" */ export declare function tuple(...t: T & { 0: STM; }): STM<[ T[number] ] extends [{ [STMTypeId]: { _R: (_: never) => infer R; }; }] ? R : never, [ T[number] ] extends [{ [STMTypeId]: { _E: (_: never) => infer E; }; }] ? E : never, TupleA>; export {}; //# sourceMappingURL=tuple.d.ts.map