import type { NonEmptyReadonlyArray } from "effect/Array"; import * as Option from "effect/Option"; import type { Misc, Union } from "ts-toolbelt"; import type * as SET from "./Set.js"; type OptOf = Union.Exclude ? X | null : A, Option.None>; export type TransformRoot = O extends Option.Option ? Transform> : Transform; export type Transform = O extends Misc.BuiltIn | Misc.Primitive ? O : { [K in keyof O]: OptOf extends infer X ? X extends (infer Y)[] ? OptOf>[] : X extends NonEmptyReadonlyArray ? NonEmptyReadonlyArray>> : X extends SET.Set ? SET.Set>> : X extends readonly (infer Y)[] ? readonly OptOf>[] : Transform : never; }; export declare const encodeOptsAsNullable: (root: T) => TransformRoot; export {}; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNmb3JtLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvdHJhbnNmb3JtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sS0FBSyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sY0FBYyxDQUFBO0FBQ3pELE9BQU8sS0FBSyxNQUFNLE1BQU0sZUFBZSxDQUFBO0FBQ3ZDLE9BQU8sS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUE7QUFDOUMsT0FBTyxLQUFLLEtBQUssR0FBRyxNQUFNLFVBQVUsQ0FBQTtBQWNwQyxLQUFLLEtBQUssQ0FBQyxDQUFDLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FDM0IsQ0FBQyxTQUFTLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsSUFBSSxHQUFHLENBQUMsRUFDN0MsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FDakIsQ0FBQTtBQUdELE1BQU0sTUFBTSxhQUFhLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxNQUFNLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FDN0UsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFBO0FBQ2hCLE1BQU0sTUFBTSxTQUFTLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxTQUFTLEdBQUcsQ0FBQyxHQUNsRTtLQUNDLENBQUMsSUFBSSxNQUFNLENBQUMsR0FBRyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUN2RixDQUFDLFNBQVMscUJBQXFCLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FDckYsQ0FBQyxTQUFTLEdBQUcsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsR0FBRyxHQUFHLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUN6RCxDQUFDLFNBQVMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsR0FBRyxTQUFTLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUMvRCxTQUFTLENBQUMsQ0FBQyxDQUFDLEdBQ1osS0FBSztDQUNWLENBQUE7QUFFSCxlQUFPLE1BQU0sb0JBQW9CLEdBQUksQ0FBQyxRQUFRLENBQUMsS0FBRyxhQUFhLENBQUMsQ0FBQyxDQUEyQyxDQUFBIn0=