@btst/stack 1.1.2 → 1.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,6 +2,6 @@ export { B as BlogApiContext, c as BlogApiRouter, a as BlogBackendHooks, N as Ne
2
2
  import '@btst/stack/plugins/api';
3
3
  import 'better-call';
4
4
  import 'zod';
5
- import '../../../shared/stack.Cr2JoQdo.cjs';
5
+ import '../../../shared/stack.CbuN2zVV.cjs';
6
6
  import '@tanstack/react-query';
7
7
  import '@btst/stack/plugins/client';
@@ -2,6 +2,6 @@ export { B as BlogApiContext, c as BlogApiRouter, a as BlogBackendHooks, N as Ne
2
2
  import '@btst/stack/plugins/api';
3
3
  import 'better-call';
4
4
  import 'zod';
5
- import '../../../shared/stack.Cr2JoQdo.mjs';
5
+ import '../../../shared/stack.CbuN2zVV.mjs';
6
6
  import '@tanstack/react-query';
7
7
  import '@btst/stack/plugins/client';
@@ -2,6 +2,6 @@ export { B as BlogApiContext, c as BlogApiRouter, a as BlogBackendHooks, N as Ne
2
2
  import '@btst/stack/plugins/api';
3
3
  import 'better-call';
4
4
  import 'zod';
5
- import '../../../shared/stack.Cr2JoQdo.js';
5
+ import '../../../shared/stack.CbuN2zVV.js';
6
6
  import '@tanstack/react-query';
7
7
  import '@btst/stack/plugins/client';
@@ -1,5 +1,5 @@
1
1
  import * as _tanstack_react_query from '@tanstack/react-query';
2
- import { S as SerializedPost, c as createPostSchema, u as updatePostSchema, a as SerializedTag } from '../../../../shared/stack.Cr2JoQdo.cjs';
2
+ import { S as SerializedPost, c as createPostSchema, u as updatePostSchema, a as SerializedTag } from '../../../../shared/stack.CbuN2zVV.cjs';
3
3
  import { z } from 'zod';
4
4
 
5
5
  interface UsePostsOptions {
@@ -82,9 +82,9 @@ declare function useSuspenseTags(): {
82
82
  /** Create a new post */
83
83
  declare function useCreatePost(): _tanstack_react_query.UseMutationResult<SerializedPost | null, Error, {
84
84
  title: string;
85
- published: boolean;
86
85
  content: string;
87
86
  excerpt: string;
87
+ published: boolean;
88
88
  tags: ({
89
89
  name: string;
90
90
  } | {
@@ -93,8 +93,8 @@ declare function useCreatePost(): _tanstack_react_query.UseMutationResult<Serial
93
93
  slug: string;
94
94
  })[];
95
95
  slug?: string | undefined;
96
- createdAt?: Date | undefined;
97
96
  publishedAt?: Date | undefined;
97
+ createdAt?: Date | undefined;
98
98
  updatedAt?: Date | undefined;
99
99
  image?: string | undefined;
100
100
  }, unknown>;
@@ -1,5 +1,5 @@
1
1
  import * as _tanstack_react_query from '@tanstack/react-query';
2
- import { S as SerializedPost, c as createPostSchema, u as updatePostSchema, a as SerializedTag } from '../../../../shared/stack.Cr2JoQdo.mjs';
2
+ import { S as SerializedPost, c as createPostSchema, u as updatePostSchema, a as SerializedTag } from '../../../../shared/stack.CbuN2zVV.mjs';
3
3
  import { z } from 'zod';
4
4
 
5
5
  interface UsePostsOptions {
@@ -82,9 +82,9 @@ declare function useSuspenseTags(): {
82
82
  /** Create a new post */
83
83
  declare function useCreatePost(): _tanstack_react_query.UseMutationResult<SerializedPost | null, Error, {
84
84
  title: string;
85
- published: boolean;
86
85
  content: string;
87
86
  excerpt: string;
87
+ published: boolean;
88
88
  tags: ({
89
89
  name: string;
90
90
  } | {
@@ -93,8 +93,8 @@ declare function useCreatePost(): _tanstack_react_query.UseMutationResult<Serial
93
93
  slug: string;
94
94
  })[];
95
95
  slug?: string | undefined;
96
- createdAt?: Date | undefined;
97
96
  publishedAt?: Date | undefined;
97
+ createdAt?: Date | undefined;
98
98
  updatedAt?: Date | undefined;
99
99
  image?: string | undefined;
100
100
  }, unknown>;
@@ -1,5 +1,5 @@
1
1
  import * as _tanstack_react_query from '@tanstack/react-query';
2
- import { S as SerializedPost, c as createPostSchema, u as updatePostSchema, a as SerializedTag } from '../../../../shared/stack.Cr2JoQdo.js';
2
+ import { S as SerializedPost, c as createPostSchema, u as updatePostSchema, a as SerializedTag } from '../../../../shared/stack.CbuN2zVV.js';
3
3
  import { z } from 'zod';
4
4
 
5
5
  interface UsePostsOptions {
@@ -82,9 +82,9 @@ declare function useSuspenseTags(): {
82
82
  /** Create a new post */
83
83
  declare function useCreatePost(): _tanstack_react_query.UseMutationResult<SerializedPost | null, Error, {
84
84
  title: string;
85
- published: boolean;
86
85
  content: string;
87
86
  excerpt: string;
87
+ published: boolean;
88
88
  tags: ({
89
89
  name: string;
90
90
  } | {
@@ -93,8 +93,8 @@ declare function useCreatePost(): _tanstack_react_query.UseMutationResult<Serial
93
93
  slug: string;
94
94
  })[];
95
95
  slug?: string | undefined;
96
- createdAt?: Date | undefined;
97
96
  publishedAt?: Date | undefined;
97
+ createdAt?: Date | undefined;
98
98
  updatedAt?: Date | undefined;
99
99
  image?: string | undefined;
100
100
  }, unknown>;
@@ -2,7 +2,7 @@ import * as react from 'react';
2
2
  import { ComponentType } from 'react';
3
3
  import * as _btst_yar from '@btst/yar';
4
4
  import { QueryClient } from '@tanstack/react-query';
5
- import { P as Post, S as SerializedPost } from '../../../shared/stack.Cr2JoQdo.cjs';
5
+ import { P as Post, S as SerializedPost } from '../../../shared/stack.CbuN2zVV.cjs';
6
6
  export { UsePostsOptions, UsePostsResult } from './hooks/index.cjs';
7
7
  import 'zod';
8
8
 
@@ -2,7 +2,7 @@ import * as react from 'react';
2
2
  import { ComponentType } from 'react';
3
3
  import * as _btst_yar from '@btst/yar';
4
4
  import { QueryClient } from '@tanstack/react-query';
5
- import { P as Post, S as SerializedPost } from '../../../shared/stack.Cr2JoQdo.mjs';
5
+ import { P as Post, S as SerializedPost } from '../../../shared/stack.CbuN2zVV.mjs';
6
6
  export { UsePostsOptions, UsePostsResult } from './hooks/index.mjs';
7
7
  import 'zod';
8
8
 
@@ -2,7 +2,7 @@ import * as react from 'react';
2
2
  import { ComponentType } from 'react';
3
3
  import * as _btst_yar from '@btst/yar';
4
4
  import { QueryClient } from '@tanstack/react-query';
5
- import { P as Post, S as SerializedPost } from '../../../shared/stack.Cr2JoQdo.js';
5
+ import { P as Post, S as SerializedPost } from '../../../shared/stack.CbuN2zVV.js';
6
6
  export { UsePostsOptions, UsePostsResult } from './hooks/index.js';
7
7
  import 'zod';
8
8
 
@@ -1,7 +1,7 @@
1
1
  import * as _btst_stack_plugins_api from '@btst/stack/plugins/api';
2
2
  import * as better_call from 'better-call';
3
3
  import { z } from 'zod';
4
- import { c as createPostSchema, u as updatePostSchema, P as Post, T as Tag, S as SerializedPost, a as SerializedTag } from '../../shared/stack.Cr2JoQdo.cjs';
4
+ import { c as createPostSchema, u as updatePostSchema, P as Post, T as Tag, S as SerializedPost, a as SerializedTag } from '../../shared/stack.CbuN2zVV.cjs';
5
5
  import * as _tanstack_react_query from '@tanstack/react-query';
6
6
  import { createApiClient } from '@btst/stack/plugins/client';
7
7
 
@@ -134,11 +134,11 @@ declare const blogBackendPlugin: (hooks?: BlogBackendHooks) => _btst_stack_plugi
134
134
  content: string;
135
135
  excerpt: string;
136
136
  slug?: string | undefined;
137
- published?: boolean | undefined;
138
- createdAt?: unknown;
139
137
  publishedAt?: unknown;
138
+ createdAt?: unknown;
140
139
  updatedAt?: unknown;
141
140
  image?: string | undefined;
141
+ published?: boolean | undefined;
142
142
  tags?: ({
143
143
  name: string;
144
144
  } | {
@@ -172,15 +172,15 @@ declare const blogBackendPlugin: (hooks?: BlogBackendHooks) => _btst_stack_plugi
172
172
  options: {
173
173
  method: "POST";
174
174
  body: z.ZodObject<{
175
- title: z.ZodString;
176
175
  slug: z.ZodOptional<z.ZodString>;
177
- published: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
178
- createdAt: z.ZodOptional<z.ZodCoercedDate<unknown>>;
179
176
  publishedAt: z.ZodOptional<z.ZodCoercedDate<unknown>>;
177
+ createdAt: z.ZodOptional<z.ZodCoercedDate<unknown>>;
180
178
  updatedAt: z.ZodOptional<z.ZodCoercedDate<unknown>>;
179
+ title: z.ZodString;
181
180
  content: z.ZodString;
182
181
  excerpt: z.ZodString;
183
182
  image: z.ZodOptional<z.ZodString>;
183
+ published: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
184
184
  tags: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
185
185
  name: z.ZodString;
186
186
  }, z.core.$strip>, z.ZodObject<{
@@ -1,7 +1,7 @@
1
1
  import * as _btst_stack_plugins_api from '@btst/stack/plugins/api';
2
2
  import * as better_call from 'better-call';
3
3
  import { z } from 'zod';
4
- import { c as createPostSchema, u as updatePostSchema, P as Post, T as Tag, S as SerializedPost, a as SerializedTag } from '../../shared/stack.Cr2JoQdo.mjs';
4
+ import { c as createPostSchema, u as updatePostSchema, P as Post, T as Tag, S as SerializedPost, a as SerializedTag } from '../../shared/stack.CbuN2zVV.mjs';
5
5
  import * as _tanstack_react_query from '@tanstack/react-query';
6
6
  import { createApiClient } from '@btst/stack/plugins/client';
7
7
 
@@ -134,11 +134,11 @@ declare const blogBackendPlugin: (hooks?: BlogBackendHooks) => _btst_stack_plugi
134
134
  content: string;
135
135
  excerpt: string;
136
136
  slug?: string | undefined;
137
- published?: boolean | undefined;
138
- createdAt?: unknown;
139
137
  publishedAt?: unknown;
138
+ createdAt?: unknown;
140
139
  updatedAt?: unknown;
141
140
  image?: string | undefined;
141
+ published?: boolean | undefined;
142
142
  tags?: ({
143
143
  name: string;
144
144
  } | {
@@ -172,15 +172,15 @@ declare const blogBackendPlugin: (hooks?: BlogBackendHooks) => _btst_stack_plugi
172
172
  options: {
173
173
  method: "POST";
174
174
  body: z.ZodObject<{
175
- title: z.ZodString;
176
175
  slug: z.ZodOptional<z.ZodString>;
177
- published: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
178
- createdAt: z.ZodOptional<z.ZodCoercedDate<unknown>>;
179
176
  publishedAt: z.ZodOptional<z.ZodCoercedDate<unknown>>;
177
+ createdAt: z.ZodOptional<z.ZodCoercedDate<unknown>>;
180
178
  updatedAt: z.ZodOptional<z.ZodCoercedDate<unknown>>;
179
+ title: z.ZodString;
181
180
  content: z.ZodString;
182
181
  excerpt: z.ZodString;
183
182
  image: z.ZodOptional<z.ZodString>;
183
+ published: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
184
184
  tags: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
185
185
  name: z.ZodString;
186
186
  }, z.core.$strip>, z.ZodObject<{
@@ -1,7 +1,7 @@
1
1
  import * as _btst_stack_plugins_api from '@btst/stack/plugins/api';
2
2
  import * as better_call from 'better-call';
3
3
  import { z } from 'zod';
4
- import { c as createPostSchema, u as updatePostSchema, P as Post, T as Tag, S as SerializedPost, a as SerializedTag } from '../../shared/stack.Cr2JoQdo.js';
4
+ import { c as createPostSchema, u as updatePostSchema, P as Post, T as Tag, S as SerializedPost, a as SerializedTag } from '../../shared/stack.CbuN2zVV.js';
5
5
  import * as _tanstack_react_query from '@tanstack/react-query';
6
6
  import { createApiClient } from '@btst/stack/plugins/client';
7
7
 
@@ -134,11 +134,11 @@ declare const blogBackendPlugin: (hooks?: BlogBackendHooks) => _btst_stack_plugi
134
134
  content: string;
135
135
  excerpt: string;
136
136
  slug?: string | undefined;
137
- published?: boolean | undefined;
138
- createdAt?: unknown;
139
137
  publishedAt?: unknown;
138
+ createdAt?: unknown;
140
139
  updatedAt?: unknown;
141
140
  image?: string | undefined;
141
+ published?: boolean | undefined;
142
142
  tags?: ({
143
143
  name: string;
144
144
  } | {
@@ -172,15 +172,15 @@ declare const blogBackendPlugin: (hooks?: BlogBackendHooks) => _btst_stack_plugi
172
172
  options: {
173
173
  method: "POST";
174
174
  body: z.ZodObject<{
175
- title: z.ZodString;
176
175
  slug: z.ZodOptional<z.ZodString>;
177
- published: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
178
- createdAt: z.ZodOptional<z.ZodCoercedDate<unknown>>;
179
176
  publishedAt: z.ZodOptional<z.ZodCoercedDate<unknown>>;
177
+ createdAt: z.ZodOptional<z.ZodCoercedDate<unknown>>;
180
178
  updatedAt: z.ZodOptional<z.ZodCoercedDate<unknown>>;
179
+ title: z.ZodString;
181
180
  content: z.ZodString;
182
181
  excerpt: z.ZodString;
183
182
  image: z.ZodOptional<z.ZodString>;
183
+ published: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
184
184
  tags: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
185
185
  name: z.ZodString;
186
186
  }, z.core.$strip>, z.ZodObject<{
@@ -1,9 +1,10 @@
1
1
  import { C as ClientPlugin } from '../../shared/stack.ByOugz9d.cjs';
2
2
  export { P as PluginOverrides } from '../../shared/stack.ByOugz9d.cjs';
3
+ import { Route } from '@btst/yar';
4
+ export { Route, createRoute, createRouter } from '@btst/yar';
3
5
  import { createClient } from 'better-call/client';
4
6
  export { createClient } from 'better-call/client';
5
7
  import { Router, Endpoint } from 'better-call';
6
- export { Route, createRoute, createRouter } from '@btst/yar';
7
8
  import '@btst/db';
8
9
 
9
10
  interface CreateApiClientOptions {
@@ -43,15 +44,12 @@ declare function createApiClient<TRouter extends Router | Record<string, Endpoin
43
44
  * routes: () => ({
44
45
  * messagesList: createRoute("/messages", () => ({ ... }))
45
46
  * }),
46
- * hooks: () => ({
47
- * useMessages: () => { ... }
48
- * })
47
+ * sitemap: () => [{ url: "/messages", lastModified: new Date(), priority: 0.8 }]
49
48
  * });
50
- * // No casts needed - route keys, hook names, and types are all preserved!
51
49
  * ```
52
50
  *
53
51
  * @template TPlugin - The exact plugin definition (auto-inferred)
54
52
  */
55
- declare function defineClientPlugin<TPlugin extends ClientPlugin<any, any>>(plugin: TPlugin): TPlugin;
53
+ declare function defineClientPlugin<TPlugin extends ClientPlugin<any, Record<string, Route>>>(plugin: TPlugin): TPlugin;
56
54
 
57
55
  export { ClientPlugin, createApiClient, defineClientPlugin };
@@ -1,9 +1,10 @@
1
1
  import { C as ClientPlugin } from '../../shared/stack.ByOugz9d.mjs';
2
2
  export { P as PluginOverrides } from '../../shared/stack.ByOugz9d.mjs';
3
+ import { Route } from '@btst/yar';
4
+ export { Route, createRoute, createRouter } from '@btst/yar';
3
5
  import { createClient } from 'better-call/client';
4
6
  export { createClient } from 'better-call/client';
5
7
  import { Router, Endpoint } from 'better-call';
6
- export { Route, createRoute, createRouter } from '@btst/yar';
7
8
  import '@btst/db';
8
9
 
9
10
  interface CreateApiClientOptions {
@@ -43,15 +44,12 @@ declare function createApiClient<TRouter extends Router | Record<string, Endpoin
43
44
  * routes: () => ({
44
45
  * messagesList: createRoute("/messages", () => ({ ... }))
45
46
  * }),
46
- * hooks: () => ({
47
- * useMessages: () => { ... }
48
- * })
47
+ * sitemap: () => [{ url: "/messages", lastModified: new Date(), priority: 0.8 }]
49
48
  * });
50
- * // No casts needed - route keys, hook names, and types are all preserved!
51
49
  * ```
52
50
  *
53
51
  * @template TPlugin - The exact plugin definition (auto-inferred)
54
52
  */
55
- declare function defineClientPlugin<TPlugin extends ClientPlugin<any, any>>(plugin: TPlugin): TPlugin;
53
+ declare function defineClientPlugin<TPlugin extends ClientPlugin<any, Record<string, Route>>>(plugin: TPlugin): TPlugin;
56
54
 
57
55
  export { ClientPlugin, createApiClient, defineClientPlugin };
@@ -1,9 +1,10 @@
1
1
  import { C as ClientPlugin } from '../../shared/stack.ByOugz9d.js';
2
2
  export { P as PluginOverrides } from '../../shared/stack.ByOugz9d.js';
3
+ import { Route } from '@btst/yar';
4
+ export { Route, createRoute, createRouter } from '@btst/yar';
3
5
  import { createClient } from 'better-call/client';
4
6
  export { createClient } from 'better-call/client';
5
7
  import { Router, Endpoint } from 'better-call';
6
- export { Route, createRoute, createRouter } from '@btst/yar';
7
8
  import '@btst/db';
8
9
 
9
10
  interface CreateApiClientOptions {
@@ -43,15 +44,12 @@ declare function createApiClient<TRouter extends Router | Record<string, Endpoin
43
44
  * routes: () => ({
44
45
  * messagesList: createRoute("/messages", () => ({ ... }))
45
46
  * }),
46
- * hooks: () => ({
47
- * useMessages: () => { ... }
48
- * })
47
+ * sitemap: () => [{ url: "/messages", lastModified: new Date(), priority: 0.8 }]
49
48
  * });
50
- * // No casts needed - route keys, hook names, and types are all preserved!
51
49
  * ```
52
50
  *
53
51
  * @template TPlugin - The exact plugin definition (auto-inferred)
54
52
  */
55
- declare function defineClientPlugin<TPlugin extends ClientPlugin<any, any>>(plugin: TPlugin): TPlugin;
53
+ declare function defineClientPlugin<TPlugin extends ClientPlugin<any, Record<string, Route>>>(plugin: TPlugin): TPlugin;
56
54
 
57
55
  export { ClientPlugin, createApiClient, defineClientPlugin };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@btst/stack",
3
- "version": "1.1.2",
3
+ "version": "1.1.4",
4
4
  "description": "A composable, plugin-based library for building full-stack applications.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -11,6 +11,7 @@
11
11
  */
12
12
 
13
13
  import type { ClientPlugin } from "../../types";
14
+ import type { Route } from "@btst/yar";
14
15
 
15
16
  export type {
16
17
  ClientPlugin,
@@ -37,17 +38,14 @@ export { createClient } from "better-call/client";
37
38
  * routes: () => ({
38
39
  * messagesList: createRoute("/messages", () => ({ ... }))
39
40
  * }),
40
- * hooks: () => ({
41
- * useMessages: () => { ... }
42
- * })
41
+ * sitemap: () => [{ url: "/messages", lastModified: new Date(), priority: 0.8 }]
43
42
  * });
44
- * // No casts needed - route keys, hook names, and types are all preserved!
45
43
  * ```
46
44
  *
47
45
  * @template TPlugin - The exact plugin definition (auto-inferred)
48
46
  */
49
- export function defineClientPlugin<TPlugin extends ClientPlugin<any, any>>(
50
- plugin: TPlugin,
51
- ): TPlugin {
47
+ export function defineClientPlugin<
48
+ TPlugin extends ClientPlugin<any, Record<string, Route>>,
49
+ >(plugin: TPlugin): TPlugin {
52
50
  return plugin;
53
51
  }
@@ -35,15 +35,15 @@ interface SerializedTag extends Omit<Tag, "createdAt" | "updatedAt"> {
35
35
  }
36
36
 
37
37
  declare const createPostSchema: z.ZodObject<{
38
- title: z.ZodString;
39
38
  slug: z.ZodOptional<z.ZodString>;
40
- published: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
41
- createdAt: z.ZodOptional<z.ZodCoercedDate<unknown>>;
42
39
  publishedAt: z.ZodOptional<z.ZodCoercedDate<unknown>>;
40
+ createdAt: z.ZodOptional<z.ZodCoercedDate<unknown>>;
43
41
  updatedAt: z.ZodOptional<z.ZodCoercedDate<unknown>>;
42
+ title: z.ZodString;
44
43
  content: z.ZodString;
45
44
  excerpt: z.ZodString;
46
45
  image: z.ZodOptional<z.ZodString>;
46
+ published: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
47
47
  tags: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
48
48
  name: z.ZodString;
49
49
  }, z.core.$strip>, z.ZodObject<{
@@ -35,15 +35,15 @@ interface SerializedTag extends Omit<Tag, "createdAt" | "updatedAt"> {
35
35
  }
36
36
 
37
37
  declare const createPostSchema: z.ZodObject<{
38
- title: z.ZodString;
39
38
  slug: z.ZodOptional<z.ZodString>;
40
- published: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
41
- createdAt: z.ZodOptional<z.ZodCoercedDate<unknown>>;
42
39
  publishedAt: z.ZodOptional<z.ZodCoercedDate<unknown>>;
40
+ createdAt: z.ZodOptional<z.ZodCoercedDate<unknown>>;
43
41
  updatedAt: z.ZodOptional<z.ZodCoercedDate<unknown>>;
42
+ title: z.ZodString;
44
43
  content: z.ZodString;
45
44
  excerpt: z.ZodString;
46
45
  image: z.ZodOptional<z.ZodString>;
46
+ published: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
47
47
  tags: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
48
48
  name: z.ZodString;
49
49
  }, z.core.$strip>, z.ZodObject<{
@@ -35,15 +35,15 @@ interface SerializedTag extends Omit<Tag, "createdAt" | "updatedAt"> {
35
35
  }
36
36
 
37
37
  declare const createPostSchema: z.ZodObject<{
38
- title: z.ZodString;
39
38
  slug: z.ZodOptional<z.ZodString>;
40
- published: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
41
- createdAt: z.ZodOptional<z.ZodCoercedDate<unknown>>;
42
39
  publishedAt: z.ZodOptional<z.ZodCoercedDate<unknown>>;
40
+ createdAt: z.ZodOptional<z.ZodCoercedDate<unknown>>;
43
41
  updatedAt: z.ZodOptional<z.ZodCoercedDate<unknown>>;
42
+ title: z.ZodString;
44
43
  content: z.ZodString;
45
44
  excerpt: z.ZodString;
46
45
  image: z.ZodOptional<z.ZodString>;
46
+ published: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
47
47
  tags: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodUnion<readonly [z.ZodObject<{
48
48
  name: z.ZodString;
49
49
  }, z.core.$strip>, z.ZodObject<{