export const OkResultSchema = <T>(inner: S.Schema<any, T>) => S.struct({ ok: S.literal(true), data: inner });
export type OkResult<T> = S.Schema.To<ReturnType<typeof OkResultSchema<T>>>;
export const makeOkResult = <T>(inner: T) => ({ ok: true, data: inner }) as const;
export type inferOkResult<R> = R extends OkResult<infer Res> ? Res : never;
export const OkResultSchema = <T>(inner: S.Schema<any, T>) => S.struct({ ok: S.literal(true), data: inner });
export type OkResult<T> = S.Schema.To<ReturnType<typeof OkResultSchema<T>>>;
export const makeOkResult = <T>(inner: T) => ({ ok: true, data: inner }) as const;
export type inferOkResult<R> = R extends OkResult<infer Res> ? Res : never;