astro-ghostcms/.pnpm-store/v3/files/42/e0fea1c069a475cfc7d88748f66...

2957 lines
120 KiB
Plaintext

import { z, ZodRawShape, ZodTypeAny } from 'zod';
declare const baseAuthorsSchema: z.ZodObject<{
name: z.ZodString;
profile_image: z.ZodNullable<z.ZodString>;
cover_image: z.ZodNullable<z.ZodString>;
bio: z.ZodNullable<z.ZodString>;
website: z.ZodNullable<z.ZodString>;
location: z.ZodNullable<z.ZodString>;
facebook: z.ZodNullable<z.ZodString>;
twitter: z.ZodNullable<z.ZodString>;
count: z.ZodOptional<z.ZodObject<{
posts: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
posts: number;
}, {
posts: number;
}>>;
url: z.ZodString;
meta_title: z.ZodNullable<z.ZodString>;
meta_description: z.ZodNullable<z.ZodString>;
slug: z.ZodString;
id: z.ZodString;
}, "strip", z.ZodTypeAny, {
url: string;
id: string;
slug: string;
meta_title: string | null;
meta_description: string | null;
name: string;
profile_image: string | null;
cover_image: string | null;
bio: string | null;
website: string | null;
location: string | null;
facebook: string | null;
twitter: string | null;
count?: {
posts: number;
} | undefined;
}, {
url: string;
id: string;
slug: string;
meta_title: string | null;
meta_description: string | null;
name: string;
profile_image: string | null;
cover_image: string | null;
bio: string | null;
website: string | null;
location: string | null;
facebook: string | null;
twitter: string | null;
count?: {
posts: number;
} | undefined;
}>;
declare const basePagesSchema: z.ZodObject<{
visibility: z.ZodUnion<[z.ZodLiteral<"public">, z.ZodLiteral<"members">, z.ZodLiteral<"none">, z.ZodLiteral<"internal">, z.ZodLiteral<"paid">, z.ZodLiteral<"tiers">]>;
custom_template: z.ZodNullable<z.ZodString>;
canonical_url: z.ZodNullable<z.ZodString>;
authors: z.ZodOptional<z.ZodArray<z.ZodObject<{
id: z.ZodString;
slug: z.ZodString;
meta_title: z.ZodNullable<z.ZodString>;
meta_description: z.ZodNullable<z.ZodString>;
name: z.ZodString;
profile_image: z.ZodNullable<z.ZodString>;
cover_image: z.ZodNullable<z.ZodString>;
bio: z.ZodNullable<z.ZodString>;
website: z.ZodNullable<z.ZodString>;
location: z.ZodNullable<z.ZodString>;
facebook: z.ZodNullable<z.ZodString>;
twitter: z.ZodNullable<z.ZodString>;
count: z.ZodOptional<z.ZodObject<{
posts: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
posts: number;
}, {
posts: number;
}>>;
url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
}, "strip", z.ZodTypeAny, {
id: string;
slug: string;
meta_title: string | null;
meta_description: string | null;
name: string;
profile_image: string | null;
cover_image: string | null;
bio: string | null;
website: string | null;
location: string | null;
facebook: string | null;
twitter: string | null;
count?: {
posts: number;
} | undefined;
url?: string | null | undefined;
}, {
id: string;
slug: string;
meta_title: string | null;
meta_description: string | null;
name: string;
profile_image: string | null;
cover_image: string | null;
bio: string | null;
website: string | null;
location: string | null;
facebook: string | null;
twitter: string | null;
count?: {
posts: number;
} | undefined;
url?: string | null | undefined;
}>, "many">>;
tags: z.ZodOptional<z.ZodArray<z.ZodObject<{
name: z.ZodString;
description: z.ZodNullable<z.ZodString>;
feature_image: z.ZodNullable<z.ZodString>;
visibility: z.ZodUnion<[z.ZodLiteral<"public">, z.ZodLiteral<"members">, z.ZodLiteral<"none">, z.ZodLiteral<"internal">, z.ZodLiteral<"paid">, z.ZodLiteral<"tiers">]>;
canonical_url: z.ZodNullable<z.ZodString>;
accent_color: z.ZodNullable<z.ZodString>;
url: z.ZodString;
created_at: z.ZodOptional<z.ZodNullable<z.ZodString>>;
updated_at: z.ZodOptional<z.ZodNullable<z.ZodString>>;
count: z.ZodOptional<z.ZodObject<{
posts: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
posts: number;
}, {
posts: number;
}>>;
twitter_image: z.ZodNullable<z.ZodString>;
twitter_title: z.ZodNullable<z.ZodString>;
twitter_description: z.ZodNullable<z.ZodString>;
og_image: z.ZodNullable<z.ZodString>;
og_title: z.ZodNullable<z.ZodString>;
og_description: z.ZodNullable<z.ZodString>;
codeinjection_head: z.ZodNullable<z.ZodString>;
codeinjection_foot: z.ZodNullable<z.ZodString>;
meta_title: z.ZodNullable<z.ZodString>;
meta_description: z.ZodNullable<z.ZodString>;
slug: z.ZodString;
id: z.ZodString;
}, "strip", z.ZodTypeAny, {
url: string;
id: string;
slug: string;
codeinjection_head: string | null;
codeinjection_foot: string | null;
og_image: string | null;
og_title: string | null;
og_description: string | null;
twitter_image: string | null;
twitter_title: string | null;
twitter_description: string | null;
meta_title: string | null;
meta_description: string | null;
name: string;
description: string | null;
feature_image: string | null;
visibility: "tiers" | "members" | "public" | "none" | "internal" | "paid";
canonical_url: string | null;
accent_color: string | null;
created_at?: string | null | undefined;
updated_at?: string | null | undefined;
count?: {
posts: number;
} | undefined;
}, {
url: string;
id: string;
slug: string;
codeinjection_head: string | null;
codeinjection_foot: string | null;
og_image: string | null;
og_title: string | null;
og_description: string | null;
twitter_image: string | null;
twitter_title: string | null;
twitter_description: string | null;
meta_title: string | null;
meta_description: string | null;
name: string;
description: string | null;
feature_image: string | null;
visibility: "tiers" | "members" | "public" | "none" | "internal" | "paid";
canonical_url: string | null;
accent_color: string | null;
created_at?: string | null | undefined;
updated_at?: string | null | undefined;
count?: {
posts: number;
} | undefined;
}>, "many">>;
primary_author: z.ZodOptional<z.ZodNullable<z.ZodObject<{
id: z.ZodString;
slug: z.ZodString;
meta_title: z.ZodNullable<z.ZodString>;
meta_description: z.ZodNullable<z.ZodString>;
name: z.ZodString;
profile_image: z.ZodNullable<z.ZodString>;
cover_image: z.ZodNullable<z.ZodString>;
bio: z.ZodNullable<z.ZodString>;
website: z.ZodNullable<z.ZodString>;
location: z.ZodNullable<z.ZodString>;
facebook: z.ZodNullable<z.ZodString>;
twitter: z.ZodNullable<z.ZodString>;
count: z.ZodOptional<z.ZodObject<{
posts: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
posts: number;
}, {
posts: number;
}>>;
url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
}, "strip", z.ZodTypeAny, {
id: string;
slug: string;
meta_title: string | null;
meta_description: string | null;
name: string;
profile_image: string | null;
cover_image: string | null;
bio: string | null;
website: string | null;
location: string | null;
facebook: string | null;
twitter: string | null;
count?: {
posts: number;
} | undefined;
url?: string | null | undefined;
}, {
id: string;
slug: string;
meta_title: string | null;
meta_description: string | null;
name: string;
profile_image: string | null;
cover_image: string | null;
bio: string | null;
website: string | null;
location: string | null;
facebook: string | null;
twitter: string | null;
count?: {
posts: number;
} | undefined;
url?: string | null | undefined;
}>>>;
primary_tag: z.ZodOptional<z.ZodNullable<z.ZodObject<{
name: z.ZodString;
description: z.ZodNullable<z.ZodString>;
feature_image: z.ZodNullable<z.ZodString>;
visibility: z.ZodUnion<[z.ZodLiteral<"public">, z.ZodLiteral<"members">, z.ZodLiteral<"none">, z.ZodLiteral<"internal">, z.ZodLiteral<"paid">, z.ZodLiteral<"tiers">]>;
canonical_url: z.ZodNullable<z.ZodString>;
accent_color: z.ZodNullable<z.ZodString>;
url: z.ZodString;
created_at: z.ZodOptional<z.ZodNullable<z.ZodString>>;
updated_at: z.ZodOptional<z.ZodNullable<z.ZodString>>;
count: z.ZodOptional<z.ZodObject<{
posts: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
posts: number;
}, {
posts: number;
}>>;
twitter_image: z.ZodNullable<z.ZodString>;
twitter_title: z.ZodNullable<z.ZodString>;
twitter_description: z.ZodNullable<z.ZodString>;
og_image: z.ZodNullable<z.ZodString>;
og_title: z.ZodNullable<z.ZodString>;
og_description: z.ZodNullable<z.ZodString>;
codeinjection_head: z.ZodNullable<z.ZodString>;
codeinjection_foot: z.ZodNullable<z.ZodString>;
meta_title: z.ZodNullable<z.ZodString>;
meta_description: z.ZodNullable<z.ZodString>;
slug: z.ZodString;
id: z.ZodString;
}, "strip", z.ZodTypeAny, {
url: string;
id: string;
slug: string;
codeinjection_head: string | null;
codeinjection_foot: string | null;
og_image: string | null;
og_title: string | null;
og_description: string | null;
twitter_image: string | null;
twitter_title: string | null;
twitter_description: string | null;
meta_title: string | null;
meta_description: string | null;
name: string;
description: string | null;
feature_image: string | null;
visibility: "tiers" | "members" | "public" | "none" | "internal" | "paid";
canonical_url: string | null;
accent_color: string | null;
created_at?: string | null | undefined;
updated_at?: string | null | undefined;
count?: {
posts: number;
} | undefined;
}, {
url: string;
id: string;
slug: string;
codeinjection_head: string | null;
codeinjection_foot: string | null;
og_image: string | null;
og_title: string | null;
og_description: string | null;
twitter_image: string | null;
twitter_title: string | null;
twitter_description: string | null;
meta_title: string | null;
meta_description: string | null;
name: string;
description: string | null;
feature_image: string | null;
visibility: "tiers" | "members" | "public" | "none" | "internal" | "paid";
canonical_url: string | null;
accent_color: string | null;
created_at?: string | null | undefined;
updated_at?: string | null | undefined;
count?: {
posts: number;
} | undefined;
}>>>;
url: z.ZodString;
excerpt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
reading_time: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
created_at: z.ZodString;
updated_at: z.ZodOptional<z.ZodNullable<z.ZodString>>;
published_at: z.ZodNullable<z.ZodString>;
email_subject: z.ZodOptional<z.ZodNullable<z.ZodString>>;
is_page: z.ZodDefault<z.ZodBoolean>;
twitter_image: z.ZodNullable<z.ZodString>;
twitter_title: z.ZodNullable<z.ZodString>;
twitter_description: z.ZodNullable<z.ZodString>;
og_image: z.ZodNullable<z.ZodString>;
og_title: z.ZodNullable<z.ZodString>;
og_description: z.ZodNullable<z.ZodString>;
codeinjection_head: z.ZodNullable<z.ZodString>;
codeinjection_foot: z.ZodNullable<z.ZodString>;
title: z.ZodString;
html: z.ZodOptional<z.ZodNullable<z.ZodString>>;
plaintext: z.ZodOptional<z.ZodNullable<z.ZodString>>;
comment_id: z.ZodNullable<z.ZodString>;
feature_image: z.ZodNullable<z.ZodString>;
feature_image_alt: z.ZodNullable<z.ZodString>;
feature_image_caption: z.ZodNullable<z.ZodString>;
featured: z.ZodBoolean;
custom_excerpt: z.ZodNullable<z.ZodString>;
meta_title: z.ZodNullable<z.ZodString>;
meta_description: z.ZodNullable<z.ZodString>;
slug: z.ZodString;
id: z.ZodString;
}, "strip", z.ZodTypeAny, {
url: string;
id: string;
slug: string;
custom_excerpt: string | null;
codeinjection_head: string | null;
codeinjection_foot: string | null;
og_image: string | null;
og_title: string | null;
og_description: string | null;
twitter_image: string | null;
twitter_title: string | null;
twitter_description: string | null;
meta_title: string | null;
meta_description: string | null;
feature_image: string | null;
visibility: "tiers" | "members" | "public" | "none" | "internal" | "paid";
canonical_url: string | null;
created_at: string;
title: string;
comment_id: string | null;
feature_image_alt: string | null;
feature_image_caption: string | null;
featured: boolean;
custom_template: string | null;
reading_time: number;
published_at: string | null;
is_page: boolean;
authors?: {
id: string;
slug: string;
meta_title: string | null;
meta_description: string | null;
name: string;
profile_image: string | null;
cover_image: string | null;
bio: string | null;
website: string | null;
location: string | null;
facebook: string | null;
twitter: string | null;
count?: {
posts: number;
} | undefined;
url?: string | null | undefined;
}[] | undefined;
tags?: {
url: string;
id: string;
slug: string;
codeinjection_head: string | null;
codeinjection_foot: string | null;
og_image: string | null;
og_title: string | null;
og_description: string | null;
twitter_image: string | null;
twitter_title: string | null;
twitter_description: string | null;
meta_title: string | null;
meta_description: string | null;
name: string;
description: string | null;
feature_image: string | null;
visibility: "tiers" | "members" | "public" | "none" | "internal" | "paid";
canonical_url: string | null;
accent_color: string | null;
created_at?: string | null | undefined;
updated_at?: string | null | undefined;
count?: {
posts: number;
} | undefined;
}[] | undefined;
primary_author?: {
id: string;
slug: string;
meta_title: string | null;
meta_description: string | null;
name: string;
profile_image: string | null;
cover_image: string | null;
bio: string | null;
website: string | null;
location: string | null;
facebook: string | null;
twitter: string | null;
count?: {
posts: number;
} | undefined;
url?: string | null | undefined;
} | null | undefined;
primary_tag?: {
url: string;
id: string;
slug: string;
codeinjection_head: string | null;
codeinjection_foot: string | null;
og_image: string | null;
og_title: string | null;
og_description: string | null;
twitter_image: string | null;
twitter_title: string | null;
twitter_description: string | null;
meta_title: string | null;
meta_description: string | null;
name: string;
description: string | null;
feature_image: string | null;
visibility: "tiers" | "members" | "public" | "none" | "internal" | "paid";
canonical_url: string | null;
accent_color: string | null;
created_at?: string | null | undefined;
updated_at?: string | null | undefined;
count?: {
posts: number;
} | undefined;
} | null | undefined;
excerpt?: string | null | undefined;
updated_at?: string | null | undefined;
email_subject?: string | null | undefined;
html?: string | null | undefined;
plaintext?: string | null | undefined;
}, {
url: string;
id: string;
slug: string;
custom_excerpt: string | null;
codeinjection_head: string | null;
codeinjection_foot: string | null;
og_image: string | null;
og_title: string | null;
og_description: string | null;
twitter_image: string | null;
twitter_title: string | null;
twitter_description: string | null;
meta_title: string | null;
meta_description: string | null;
feature_image: string | null;
visibility: "tiers" | "members" | "public" | "none" | "internal" | "paid";
canonical_url: string | null;
created_at: string;
title: string;
comment_id: string | null;
feature_image_alt: string | null;
feature_image_caption: string | null;
featured: boolean;
custom_template: string | null;
published_at: string | null;
authors?: {
id: string;
slug: string;
meta_title: string | null;
meta_description: string | null;
name: string;
profile_image: string | null;
cover_image: string | null;
bio: string | null;
website: string | null;
location: string | null;
facebook: string | null;
twitter: string | null;
count?: {
posts: number;
} | undefined;
url?: string | null | undefined;
}[] | undefined;
tags?: {
url: string;
id: string;
slug: string;
codeinjection_head: string | null;
codeinjection_foot: string | null;
og_image: string | null;
og_title: string | null;
og_description: string | null;
twitter_image: string | null;
twitter_title: string | null;
twitter_description: string | null;
meta_title: string | null;
meta_description: string | null;
name: string;
description: string | null;
feature_image: string | null;
visibility: "tiers" | "members" | "public" | "none" | "internal" | "paid";
canonical_url: string | null;
accent_color: string | null;
created_at?: string | null | undefined;
updated_at?: string | null | undefined;
count?: {
posts: number;
} | undefined;
}[] | undefined;
primary_author?: {
id: string;
slug: string;
meta_title: string | null;
meta_description: string | null;
name: string;
profile_image: string | null;
cover_image: string | null;
bio: string | null;
website: string | null;
location: string | null;
facebook: string | null;
twitter: string | null;
count?: {
posts: number;
} | undefined;
url?: string | null | undefined;
} | null | undefined;
primary_tag?: {
url: string;
id: string;
slug: string;
codeinjection_head: string | null;
codeinjection_foot: string | null;
og_image: string | null;
og_title: string | null;
og_description: string | null;
twitter_image: string | null;
twitter_title: string | null;
twitter_description: string | null;
meta_title: string | null;
meta_description: string | null;
name: string;
description: string | null;
feature_image: string | null;
visibility: "tiers" | "members" | "public" | "none" | "internal" | "paid";
canonical_url: string | null;
accent_color: string | null;
created_at?: string | null | undefined;
updated_at?: string | null | undefined;
count?: {
posts: number;
} | undefined;
} | null | undefined;
excerpt?: string | null | undefined;
reading_time?: number | undefined;
updated_at?: string | null | undefined;
email_subject?: string | null | undefined;
is_page?: boolean | undefined;
html?: string | null | undefined;
plaintext?: string | null | undefined;
}>;
declare const basePostsSchema: z.ZodObject<{
visibility: z.ZodUnion<[z.ZodLiteral<"public">, z.ZodLiteral<"members">, z.ZodLiteral<"none">, z.ZodLiteral<"internal">, z.ZodLiteral<"paid">, z.ZodLiteral<"tiers">]>;
custom_template: z.ZodNullable<z.ZodString>;
canonical_url: z.ZodNullable<z.ZodString>;
authors: z.ZodOptional<z.ZodArray<z.ZodObject<{
id: z.ZodString;
slug: z.ZodString;
meta_title: z.ZodNullable<z.ZodString>;
meta_description: z.ZodNullable<z.ZodString>;
name: z.ZodString;
profile_image: z.ZodNullable<z.ZodString>;
cover_image: z.ZodNullable<z.ZodString>;
bio: z.ZodNullable<z.ZodString>;
website: z.ZodNullable<z.ZodString>;
location: z.ZodNullable<z.ZodString>;
facebook: z.ZodNullable<z.ZodString>;
twitter: z.ZodNullable<z.ZodString>;
count: z.ZodOptional<z.ZodObject<{
posts: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
posts: number;
}, {
posts: number;
}>>;
url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
}, "strip", z.ZodTypeAny, {
id: string;
slug: string;
meta_title: string | null;
meta_description: string | null;
name: string;
profile_image: string | null;
cover_image: string | null;
bio: string | null;
website: string | null;
location: string | null;
facebook: string | null;
twitter: string | null;
count?: {
posts: number;
} | undefined;
url?: string | null | undefined;
}, {
id: string;
slug: string;
meta_title: string | null;
meta_description: string | null;
name: string;
profile_image: string | null;
cover_image: string | null;
bio: string | null;
website: string | null;
location: string | null;
facebook: string | null;
twitter: string | null;
count?: {
posts: number;
} | undefined;
url?: string | null | undefined;
}>, "many">>;
tags: z.ZodOptional<z.ZodArray<z.ZodObject<{
name: z.ZodString;
description: z.ZodNullable<z.ZodString>;
feature_image: z.ZodNullable<z.ZodString>;
visibility: z.ZodUnion<[z.ZodLiteral<"public">, z.ZodLiteral<"members">, z.ZodLiteral<"none">, z.ZodLiteral<"internal">, z.ZodLiteral<"paid">, z.ZodLiteral<"tiers">]>;
canonical_url: z.ZodNullable<z.ZodString>;
accent_color: z.ZodNullable<z.ZodString>;
url: z.ZodString;
created_at: z.ZodOptional<z.ZodNullable<z.ZodString>>;
updated_at: z.ZodOptional<z.ZodNullable<z.ZodString>>;
count: z.ZodOptional<z.ZodObject<{
posts: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
posts: number;
}, {
posts: number;
}>>;
twitter_image: z.ZodNullable<z.ZodString>;
twitter_title: z.ZodNullable<z.ZodString>;
twitter_description: z.ZodNullable<z.ZodString>;
og_image: z.ZodNullable<z.ZodString>;
og_title: z.ZodNullable<z.ZodString>;
og_description: z.ZodNullable<z.ZodString>;
codeinjection_head: z.ZodNullable<z.ZodString>;
codeinjection_foot: z.ZodNullable<z.ZodString>;
meta_title: z.ZodNullable<z.ZodString>;
meta_description: z.ZodNullable<z.ZodString>;
slug: z.ZodString;
id: z.ZodString;
}, "strip", z.ZodTypeAny, {
url: string;
id: string;
slug: string;
codeinjection_head: string | null;
codeinjection_foot: string | null;
og_image: string | null;
og_title: string | null;
og_description: string | null;
twitter_image: string | null;
twitter_title: string | null;
twitter_description: string | null;
meta_title: string | null;
meta_description: string | null;
name: string;
description: string | null;
feature_image: string | null;
visibility: "tiers" | "members" | "public" | "none" | "internal" | "paid";
canonical_url: string | null;
accent_color: string | null;
created_at?: string | null | undefined;
updated_at?: string | null | undefined;
count?: {
posts: number;
} | undefined;
}, {
url: string;
id: string;
slug: string;
codeinjection_head: string | null;
codeinjection_foot: string | null;
og_image: string | null;
og_title: string | null;
og_description: string | null;
twitter_image: string | null;
twitter_title: string | null;
twitter_description: string | null;
meta_title: string | null;
meta_description: string | null;
name: string;
description: string | null;
feature_image: string | null;
visibility: "tiers" | "members" | "public" | "none" | "internal" | "paid";
canonical_url: string | null;
accent_color: string | null;
created_at?: string | null | undefined;
updated_at?: string | null | undefined;
count?: {
posts: number;
} | undefined;
}>, "many">>;
primary_author: z.ZodOptional<z.ZodNullable<z.ZodObject<{
id: z.ZodString;
slug: z.ZodString;
meta_title: z.ZodNullable<z.ZodString>;
meta_description: z.ZodNullable<z.ZodString>;
name: z.ZodString;
profile_image: z.ZodNullable<z.ZodString>;
cover_image: z.ZodNullable<z.ZodString>;
bio: z.ZodNullable<z.ZodString>;
website: z.ZodNullable<z.ZodString>;
location: z.ZodNullable<z.ZodString>;
facebook: z.ZodNullable<z.ZodString>;
twitter: z.ZodNullable<z.ZodString>;
count: z.ZodOptional<z.ZodObject<{
posts: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
posts: number;
}, {
posts: number;
}>>;
url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
}, "strip", z.ZodTypeAny, {
id: string;
slug: string;
meta_title: string | null;
meta_description: string | null;
name: string;
profile_image: string | null;
cover_image: string | null;
bio: string | null;
website: string | null;
location: string | null;
facebook: string | null;
twitter: string | null;
count?: {
posts: number;
} | undefined;
url?: string | null | undefined;
}, {
id: string;
slug: string;
meta_title: string | null;
meta_description: string | null;
name: string;
profile_image: string | null;
cover_image: string | null;
bio: string | null;
website: string | null;
location: string | null;
facebook: string | null;
twitter: string | null;
count?: {
posts: number;
} | undefined;
url?: string | null | undefined;
}>>>;
primary_tag: z.ZodOptional<z.ZodNullable<z.ZodObject<{
name: z.ZodString;
description: z.ZodNullable<z.ZodString>;
feature_image: z.ZodNullable<z.ZodString>;
visibility: z.ZodUnion<[z.ZodLiteral<"public">, z.ZodLiteral<"members">, z.ZodLiteral<"none">, z.ZodLiteral<"internal">, z.ZodLiteral<"paid">, z.ZodLiteral<"tiers">]>;
canonical_url: z.ZodNullable<z.ZodString>;
accent_color: z.ZodNullable<z.ZodString>;
url: z.ZodString;
created_at: z.ZodOptional<z.ZodNullable<z.ZodString>>;
updated_at: z.ZodOptional<z.ZodNullable<z.ZodString>>;
count: z.ZodOptional<z.ZodObject<{
posts: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
posts: number;
}, {
posts: number;
}>>;
twitter_image: z.ZodNullable<z.ZodString>;
twitter_title: z.ZodNullable<z.ZodString>;
twitter_description: z.ZodNullable<z.ZodString>;
og_image: z.ZodNullable<z.ZodString>;
og_title: z.ZodNullable<z.ZodString>;
og_description: z.ZodNullable<z.ZodString>;
codeinjection_head: z.ZodNullable<z.ZodString>;
codeinjection_foot: z.ZodNullable<z.ZodString>;
meta_title: z.ZodNullable<z.ZodString>;
meta_description: z.ZodNullable<z.ZodString>;
slug: z.ZodString;
id: z.ZodString;
}, "strip", z.ZodTypeAny, {
url: string;
id: string;
slug: string;
codeinjection_head: string | null;
codeinjection_foot: string | null;
og_image: string | null;
og_title: string | null;
og_description: string | null;
twitter_image: string | null;
twitter_title: string | null;
twitter_description: string | null;
meta_title: string | null;
meta_description: string | null;
name: string;
description: string | null;
feature_image: string | null;
visibility: "tiers" | "members" | "public" | "none" | "internal" | "paid";
canonical_url: string | null;
accent_color: string | null;
created_at?: string | null | undefined;
updated_at?: string | null | undefined;
count?: {
posts: number;
} | undefined;
}, {
url: string;
id: string;
slug: string;
codeinjection_head: string | null;
codeinjection_foot: string | null;
og_image: string | null;
og_title: string | null;
og_description: string | null;
twitter_image: string | null;
twitter_title: string | null;
twitter_description: string | null;
meta_title: string | null;
meta_description: string | null;
name: string;
description: string | null;
feature_image: string | null;
visibility: "tiers" | "members" | "public" | "none" | "internal" | "paid";
canonical_url: string | null;
accent_color: string | null;
created_at?: string | null | undefined;
updated_at?: string | null | undefined;
count?: {
posts: number;
} | undefined;
}>>>;
url: z.ZodString;
excerpt: z.ZodNullable<z.ZodString>;
reading_time: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
created_at: z.ZodString;
updated_at: z.ZodOptional<z.ZodNullable<z.ZodString>>;
published_at: z.ZodNullable<z.ZodString>;
email_subject: z.ZodOptional<z.ZodNullable<z.ZodString>>;
is_page: z.ZodDefault<z.ZodBoolean>;
twitter_image: z.ZodNullable<z.ZodString>;
twitter_title: z.ZodNullable<z.ZodString>;
twitter_description: z.ZodNullable<z.ZodString>;
og_image: z.ZodNullable<z.ZodString>;
og_title: z.ZodNullable<z.ZodString>;
og_description: z.ZodNullable<z.ZodString>;
codeinjection_head: z.ZodNullable<z.ZodString>;
codeinjection_foot: z.ZodNullable<z.ZodString>;
title: z.ZodString;
html: z.ZodOptional<z.ZodNullable<z.ZodString>>;
plaintext: z.ZodOptional<z.ZodNullable<z.ZodString>>;
comment_id: z.ZodNullable<z.ZodString>;
feature_image: z.ZodNullable<z.ZodString>;
feature_image_alt: z.ZodNullable<z.ZodString>;
feature_image_caption: z.ZodNullable<z.ZodString>;
featured: z.ZodBoolean;
custom_excerpt: z.ZodNullable<z.ZodString>;
meta_title: z.ZodNullable<z.ZodString>;
meta_description: z.ZodNullable<z.ZodString>;
slug: z.ZodString;
id: z.ZodString;
}, "strip", z.ZodTypeAny, {
url: string;
id: string;
slug: string;
excerpt: string | null;
custom_excerpt: string | null;
codeinjection_head: string | null;
codeinjection_foot: string | null;
og_image: string | null;
og_title: string | null;
og_description: string | null;
twitter_image: string | null;
twitter_title: string | null;
twitter_description: string | null;
meta_title: string | null;
meta_description: string | null;
feature_image: string | null;
visibility: "tiers" | "members" | "public" | "none" | "internal" | "paid";
canonical_url: string | null;
created_at: string;
title: string;
comment_id: string | null;
feature_image_alt: string | null;
feature_image_caption: string | null;
featured: boolean;
custom_template: string | null;
reading_time: number;
published_at: string | null;
is_page: boolean;
authors?: {
id: string;
slug: string;
meta_title: string | null;
meta_description: string | null;
name: string;
profile_image: string | null;
cover_image: string | null;
bio: string | null;
website: string | null;
location: string | null;
facebook: string | null;
twitter: string | null;
count?: {
posts: number;
} | undefined;
url?: string | null | undefined;
}[] | undefined;
tags?: {
url: string;
id: string;
slug: string;
codeinjection_head: string | null;
codeinjection_foot: string | null;
og_image: string | null;
og_title: string | null;
og_description: string | null;
twitter_image: string | null;
twitter_title: string | null;
twitter_description: string | null;
meta_title: string | null;
meta_description: string | null;
name: string;
description: string | null;
feature_image: string | null;
visibility: "tiers" | "members" | "public" | "none" | "internal" | "paid";
canonical_url: string | null;
accent_color: string | null;
created_at?: string | null | undefined;
updated_at?: string | null | undefined;
count?: {
posts: number;
} | undefined;
}[] | undefined;
primary_author?: {
id: string;
slug: string;
meta_title: string | null;
meta_description: string | null;
name: string;
profile_image: string | null;
cover_image: string | null;
bio: string | null;
website: string | null;
location: string | null;
facebook: string | null;
twitter: string | null;
count?: {
posts: number;
} | undefined;
url?: string | null | undefined;
} | null | undefined;
primary_tag?: {
url: string;
id: string;
slug: string;
codeinjection_head: string | null;
codeinjection_foot: string | null;
og_image: string | null;
og_title: string | null;
og_description: string | null;
twitter_image: string | null;
twitter_title: string | null;
twitter_description: string | null;
meta_title: string | null;
meta_description: string | null;
name: string;
description: string | null;
feature_image: string | null;
visibility: "tiers" | "members" | "public" | "none" | "internal" | "paid";
canonical_url: string | null;
accent_color: string | null;
created_at?: string | null | undefined;
updated_at?: string | null | undefined;
count?: {
posts: number;
} | undefined;
} | null | undefined;
updated_at?: string | null | undefined;
email_subject?: string | null | undefined;
html?: string | null | undefined;
plaintext?: string | null | undefined;
}, {
url: string;
id: string;
slug: string;
excerpt: string | null;
custom_excerpt: string | null;
codeinjection_head: string | null;
codeinjection_foot: string | null;
og_image: string | null;
og_title: string | null;
og_description: string | null;
twitter_image: string | null;
twitter_title: string | null;
twitter_description: string | null;
meta_title: string | null;
meta_description: string | null;
feature_image: string | null;
visibility: "tiers" | "members" | "public" | "none" | "internal" | "paid";
canonical_url: string | null;
created_at: string;
title: string;
comment_id: string | null;
feature_image_alt: string | null;
feature_image_caption: string | null;
featured: boolean;
custom_template: string | null;
published_at: string | null;
authors?: {
id: string;
slug: string;
meta_title: string | null;
meta_description: string | null;
name: string;
profile_image: string | null;
cover_image: string | null;
bio: string | null;
website: string | null;
location: string | null;
facebook: string | null;
twitter: string | null;
count?: {
posts: number;
} | undefined;
url?: string | null | undefined;
}[] | undefined;
tags?: {
url: string;
id: string;
slug: string;
codeinjection_head: string | null;
codeinjection_foot: string | null;
og_image: string | null;
og_title: string | null;
og_description: string | null;
twitter_image: string | null;
twitter_title: string | null;
twitter_description: string | null;
meta_title: string | null;
meta_description: string | null;
name: string;
description: string | null;
feature_image: string | null;
visibility: "tiers" | "members" | "public" | "none" | "internal" | "paid";
canonical_url: string | null;
accent_color: string | null;
created_at?: string | null | undefined;
updated_at?: string | null | undefined;
count?: {
posts: number;
} | undefined;
}[] | undefined;
primary_author?: {
id: string;
slug: string;
meta_title: string | null;
meta_description: string | null;
name: string;
profile_image: string | null;
cover_image: string | null;
bio: string | null;
website: string | null;
location: string | null;
facebook: string | null;
twitter: string | null;
count?: {
posts: number;
} | undefined;
url?: string | null | undefined;
} | null | undefined;
primary_tag?: {
url: string;
id: string;
slug: string;
codeinjection_head: string | null;
codeinjection_foot: string | null;
og_image: string | null;
og_title: string | null;
og_description: string | null;
twitter_image: string | null;
twitter_title: string | null;
twitter_description: string | null;
meta_title: string | null;
meta_description: string | null;
name: string;
description: string | null;
feature_image: string | null;
visibility: "tiers" | "members" | "public" | "none" | "internal" | "paid";
canonical_url: string | null;
accent_color: string | null;
created_at?: string | null | undefined;
updated_at?: string | null | undefined;
count?: {
posts: number;
} | undefined;
} | null | undefined;
reading_time?: number | undefined;
updated_at?: string | null | undefined;
email_subject?: string | null | undefined;
is_page?: boolean | undefined;
html?: string | null | undefined;
plaintext?: string | null | undefined;
}>;
declare const baseSettingsSchema: z.ZodObject<{
title: z.ZodString;
description: z.ZodString;
logo: z.ZodNullable<z.ZodString>;
icon: z.ZodNullable<z.ZodString>;
accent_color: z.ZodNullable<z.ZodString>;
cover_image: z.ZodNullable<z.ZodString>;
facebook: z.ZodNullable<z.ZodString>;
twitter: z.ZodNullable<z.ZodString>;
lang: z.ZodString;
timezone: z.ZodString;
codeinjection_head: z.ZodNullable<z.ZodString>;
codeinjection_foot: z.ZodNullable<z.ZodString>;
navigation: z.ZodArray<z.ZodObject<{
label: z.ZodString;
url: z.ZodString;
}, "strip", z.ZodTypeAny, {
url: string;
label: string;
}, {
url: string;
label: string;
}>, "many">;
secondary_navigation: z.ZodArray<z.ZodObject<{
label: z.ZodString;
url: z.ZodString;
}, "strip", z.ZodTypeAny, {
url: string;
label: string;
}, {
url: string;
label: string;
}>, "many">;
meta_title: z.ZodNullable<z.ZodString>;
meta_description: z.ZodNullable<z.ZodString>;
og_image: z.ZodNullable<z.ZodString>;
og_title: z.ZodNullable<z.ZodString>;
og_description: z.ZodNullable<z.ZodString>;
twitter_image: z.ZodNullable<z.ZodString>;
twitter_title: z.ZodNullable<z.ZodString>;
twitter_description: z.ZodNullable<z.ZodString>;
members_support_address: z.ZodString;
url: z.ZodString;
}, "strip", z.ZodTypeAny, {
url: string;
codeinjection_head: string | null;
codeinjection_foot: string | null;
og_image: string | null;
og_title: string | null;
og_description: string | null;
twitter_image: string | null;
twitter_title: string | null;
twitter_description: string | null;
meta_title: string | null;
meta_description: string | null;
cover_image: string | null;
facebook: string | null;
twitter: string | null;
description: string;
accent_color: string | null;
title: string;
logo: string | null;
icon: string | null;
lang: string;
timezone: string;
navigation: {
url: string;
label: string;
}[];
secondary_navigation: {
url: string;
label: string;
}[];
members_support_address: string;
}, {
url: string;
codeinjection_head: string | null;
codeinjection_foot: string | null;
og_image: string | null;
og_title: string | null;
og_description: string | null;
twitter_image: string | null;
twitter_title: string | null;
twitter_description: string | null;
meta_title: string | null;
meta_description: string | null;
cover_image: string | null;
facebook: string | null;
twitter: string | null;
description: string;
accent_color: string | null;
title: string;
logo: string | null;
icon: string | null;
lang: string;
timezone: string;
navigation: {
url: string;
label: string;
}[];
secondary_navigation: {
url: string;
label: string;
}[];
members_support_address: string;
}>;
type HTTPClientOptions = {
key: string;
version: APICredentials["version"];
url: APICredentials["url"];
endpoint: "content" | "admin";
};
interface IHTTPClient {
get baseURL(): URL | undefined;
get jwt(): string | undefined;
generateJWT(key: string): Promise<string>;
genHeaders(): Promise<Record<string, string>>;
fetch({ resource, searchParams, options, pathnameIdentity, }: {
resource: APIResource;
searchParams?: URLSearchParams;
options?: RequestInit;
pathnameIdentity?: string;
}): Promise<any>;
fetchRawResponse({ resource, searchParams, options, pathnameIdentity, }: {
resource: APIResource;
searchParams?: URLSearchParams;
options?: RequestInit;
pathnameIdentity?: string;
}): Promise<Response>;
}
declare class HTTPClient<const Options extends HTTPClientOptions = any> implements IHTTPClient {
protected config: Options;
private _jwt;
private _jwtExpiresAt;
protected _baseURL: URL | undefined;
constructor(config: Options);
get baseURL(): URL | undefined;
get jwt(): string | undefined;
generateJWT(key: string): Promise<string>;
genHeaders(): Promise<Record<string, string>>;
fetch({ resource, searchParams, options, pathnameIdentity, }: {
resource: APIResource;
searchParams?: URLSearchParams;
options?: RequestInit;
pathnameIdentity?: string;
}): Promise<any>;
fetchRawResponse({ resource, searchParams, options, pathnameIdentity, }: {
resource: APIResource;
searchParams?: URLSearchParams;
options?: RequestInit;
pathnameIdentity?: string;
}): Promise<Response>;
}
declare const ghostIdentitySchema: z.ZodObject<{
slug: z.ZodString;
id: z.ZodString;
}, "strip", z.ZodTypeAny, {
id: string;
slug: string;
}, {
id: string;
slug: string;
}>;
declare const ghostIdentityInputSchema: z.ZodObject<{
slug: z.ZodOptional<z.ZodString>;
id: z.ZodOptional<z.ZodString>;
email: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
slug?: string | undefined;
id?: string | undefined;
email?: string | undefined;
}, {
slug?: string | undefined;
id?: string | undefined;
email?: string | undefined;
}>;
type GhostIdentityInput = z.infer<typeof ghostIdentityInputSchema>;
type GhostIdentity = z.infer<typeof ghostIdentitySchema>;
declare const ghostMetaSchema: z.ZodObject<{
pagination: z.ZodObject<{
pages: z.ZodNumber;
page: z.ZodNumber;
limit: z.ZodUnion<[z.ZodNumber, z.ZodLiteral<"all">]>;
total: z.ZodNumber;
prev: z.ZodNullable<z.ZodNumber>;
next: z.ZodNullable<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
pages: number;
page: number;
limit: number | "all";
total: number;
prev: number | null;
next: number | null;
}, {
pages: number;
page: number;
limit: number | "all";
total: number;
prev: number | null;
next: number | null;
}>;
}, "strip", z.ZodTypeAny, {
pagination: {
pages: number;
page: number;
limit: number | "all";
total: number;
prev: number | null;
next: number | null;
};
}, {
pagination: {
pages: number;
page: number;
limit: number | "all";
total: number;
prev: number | null;
next: number | null;
};
}>;
type GhostMeta = z.infer<typeof ghostMetaSchema>;
declare const ghostExcerptSchema: z.ZodObject<{
excerpt: z.ZodOptional<z.ZodString>;
custom_excerpt: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
excerpt?: string | undefined;
custom_excerpt?: string | undefined;
}, {
excerpt?: string | undefined;
custom_excerpt?: string | undefined;
}>;
declare const ghostCodeInjectionSchema: z.ZodObject<{
codeinjection_head: z.ZodNullable<z.ZodString>;
codeinjection_foot: z.ZodNullable<z.ZodString>;
}, "strip", z.ZodTypeAny, {
codeinjection_head: string | null;
codeinjection_foot: string | null;
}, {
codeinjection_head: string | null;
codeinjection_foot: string | null;
}>;
declare const ghostFacebookSchema: z.ZodObject<{
og_image: z.ZodNullable<z.ZodString>;
og_title: z.ZodNullable<z.ZodString>;
og_description: z.ZodNullable<z.ZodString>;
}, "strip", z.ZodTypeAny, {
og_image: string | null;
og_title: string | null;
og_description: string | null;
}, {
og_image: string | null;
og_title: string | null;
og_description: string | null;
}>;
declare const ghostTwitterSchema: z.ZodObject<{
twitter_image: z.ZodNullable<z.ZodString>;
twitter_title: z.ZodNullable<z.ZodString>;
twitter_description: z.ZodNullable<z.ZodString>;
}, "strip", z.ZodTypeAny, {
twitter_image: string | null;
twitter_title: string | null;
twitter_description: string | null;
}, {
twitter_image: string | null;
twitter_title: string | null;
twitter_description: string | null;
}>;
declare const ghostSocialMediaSchema: z.ZodObject<{
twitter_image: z.ZodNullable<z.ZodString>;
twitter_title: z.ZodNullable<z.ZodString>;
twitter_description: z.ZodNullable<z.ZodString>;
og_image: z.ZodNullable<z.ZodString>;
og_title: z.ZodNullable<z.ZodString>;
og_description: z.ZodNullable<z.ZodString>;
}, "strip", z.ZodTypeAny, {
og_image: string | null;
og_title: string | null;
og_description: string | null;
twitter_image: string | null;
twitter_title: string | null;
twitter_description: string | null;
}, {
og_image: string | null;
og_title: string | null;
og_description: string | null;
twitter_image: string | null;
twitter_title: string | null;
twitter_description: string | null;
}>;
declare const ghostMetadataSchema: z.ZodObject<{
meta_title: z.ZodNullable<z.ZodString>;
meta_description: z.ZodNullable<z.ZodString>;
}, "strip", z.ZodTypeAny, {
meta_title: string | null;
meta_description: string | null;
}, {
meta_title: string | null;
meta_description: string | null;
}>;
declare const ghostVisibilitySchema: z.ZodUnion<[z.ZodLiteral<"public">, z.ZodLiteral<"members">, z.ZodLiteral<"none">, z.ZodLiteral<"internal">, z.ZodLiteral<"paid">, z.ZodLiteral<"tiers">]>;
declare const apiVersionsSchema: z.ZodDefault<z.ZodString>;
type TAPIVersion<V> = V extends "v5.0" | `v5.${infer Minor}` ? `v5.${Minor}` : never;
type APIVersions = z.infer<typeof apiVersionsSchema>;
declare const contentAPICredentialsSchema: z.ZodObject<{
key: z.ZodString;
version: z.ZodDefault<z.ZodString>;
url: z.ZodString;
}, "strip", z.ZodTypeAny, {
version: string;
url: string;
key: string;
}, {
url: string;
key: string;
version?: string | undefined;
}>;
type ContentAPICredentials = z.infer<typeof contentAPICredentialsSchema>;
type APIResource = "pages" | "posts" | "settings" | "authors" | "tiers" | "tags" | "members" | "site" | "offers" | "users" | "newsletters" | "webhooks" | "themes" | "files" | "images";
type APIEndpoint = "admin" | "content";
type APICredentials = {
key: string;
version: APIVersions;
url: string;
};
type GhostRequestConfig = {
endpoint: APIEndpoint;
resource: APIResource;
httpClient: HTTPClient;
};
declare const adminAPICredentialsSchema: z.ZodObject<{
key: z.ZodString;
version: z.ZodDefault<z.ZodString>;
url: z.ZodString;
}, "strip", z.ZodTypeAny, {
version: string;
url: string;
key: string;
}, {
url: string;
key: string;
version?: string | undefined;
}>;
declare const slugOrIdSchema: z.ZodUnion<[z.ZodObject<{
slug: z.ZodString;
}, "strip", z.ZodTypeAny, {
slug: string;
}, {
slug: string;
}>, z.ZodObject<{
id: z.ZodString;
}, "strip", z.ZodTypeAny, {
id: string;
}, {
id: string;
}>]>;
declare const emailOrIdSchema: z.ZodUnion<[z.ZodObject<{
email: z.ZodString;
}, "strip", z.ZodTypeAny, {
email: string;
}, {
email: string;
}>, z.ZodObject<{
id: z.ZodString;
}, "strip", z.ZodTypeAny, {
id: string;
}, {
id: string;
}>]>;
declare const identitySchema: z.ZodUnion<[z.ZodObject<{
email: z.ZodString;
}, "strip", z.ZodTypeAny, {
email: string;
}, {
email: string;
}>, z.ZodObject<{
id: z.ZodString;
}, "strip", z.ZodTypeAny, {
id: string;
}, {
id: string;
}>, z.ZodObject<{
slug: z.ZodString;
}, "strip", z.ZodTypeAny, {
slug: string;
}, {
slug: string;
}>]>;
type AdminAPICredentials = z.infer<typeof adminAPICredentialsSchema>;
declare const baseTagsSchema: z.ZodObject<{
name: z.ZodString;
description: z.ZodNullable<z.ZodString>;
feature_image: z.ZodNullable<z.ZodString>;
visibility: z.ZodUnion<[z.ZodLiteral<"public">, z.ZodLiteral<"members">, z.ZodLiteral<"none">, z.ZodLiteral<"internal">, z.ZodLiteral<"paid">, z.ZodLiteral<"tiers">]>;
canonical_url: z.ZodNullable<z.ZodString>;
accent_color: z.ZodNullable<z.ZodString>;
url: z.ZodString;
created_at: z.ZodOptional<z.ZodNullable<z.ZodString>>;
updated_at: z.ZodOptional<z.ZodNullable<z.ZodString>>;
count: z.ZodOptional<z.ZodObject<{
posts: z.ZodNumber;
}, "strip", z.ZodTypeAny, {
posts: number;
}, {
posts: number;
}>>;
twitter_image: z.ZodNullable<z.ZodString>;
twitter_title: z.ZodNullable<z.ZodString>;
twitter_description: z.ZodNullable<z.ZodString>;
og_image: z.ZodNullable<z.ZodString>;
og_title: z.ZodNullable<z.ZodString>;
og_description: z.ZodNullable<z.ZodString>;
codeinjection_head: z.ZodNullable<z.ZodString>;
codeinjection_foot: z.ZodNullable<z.ZodString>;
meta_title: z.ZodNullable<z.ZodString>;
meta_description: z.ZodNullable<z.ZodString>;
slug: z.ZodString;
id: z.ZodString;
}, "strip", z.ZodTypeAny, {
url: string;
id: string;
slug: string;
codeinjection_head: string | null;
codeinjection_foot: string | null;
og_image: string | null;
og_title: string | null;
og_description: string | null;
twitter_image: string | null;
twitter_title: string | null;
twitter_description: string | null;
meta_title: string | null;
meta_description: string | null;
name: string;
description: string | null;
feature_image: string | null;
visibility: "tiers" | "members" | "public" | "none" | "internal" | "paid";
canonical_url: string | null;
accent_color: string | null;
created_at?: string | null | undefined;
updated_at?: string | null | undefined;
count?: {
posts: number;
} | undefined;
}, {
url: string;
id: string;
slug: string;
codeinjection_head: string | null;
codeinjection_foot: string | null;
og_image: string | null;
og_title: string | null;
og_description: string | null;
twitter_image: string | null;
twitter_title: string | null;
twitter_description: string | null;
meta_title: string | null;
meta_description: string | null;
name: string;
description: string | null;
feature_image: string | null;
visibility: "tiers" | "members" | "public" | "none" | "internal" | "paid";
canonical_url: string | null;
accent_color: string | null;
created_at?: string | null | undefined;
updated_at?: string | null | undefined;
count?: {
posts: number;
} | undefined;
}>;
declare const baseTiersSchema: z.ZodObject<{
name: z.ZodString;
description: z.ZodNullable<z.ZodString>;
active: z.ZodBoolean;
type: z.ZodUnion<[z.ZodLiteral<"free">, z.ZodLiteral<"paid">]>;
welcome_page_url: z.ZodNullable<z.ZodString>;
created_at: z.ZodString;
updated_at: z.ZodNullable<z.ZodString>;
stripe_prices: z.ZodEffects<z.ZodOptional<z.ZodArray<z.ZodNumber, "many">>, number[], number[] | undefined>;
monthly_price: z.ZodEffects<z.ZodOptional<z.ZodNullable<z.ZodNumber>>, number | null, number | null | undefined>;
yearly_price: z.ZodEffects<z.ZodOptional<z.ZodNullable<z.ZodNumber>>, number | null, number | null | undefined>;
benefits: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
visibility: z.ZodUnion<[z.ZodLiteral<"public">, z.ZodLiteral<"members">, z.ZodLiteral<"none">, z.ZodLiteral<"internal">, z.ZodLiteral<"paid">, z.ZodLiteral<"tiers">]>;
currency: z.ZodOptional<z.ZodNullable<z.ZodString>>;
trial_days: z.ZodDefault<z.ZodNumber>;
slug: z.ZodString;
id: z.ZodString;
}, "strip", z.ZodTypeAny, {
id: string;
slug: string;
type: "paid" | "free";
name: string;
description: string | null;
visibility: "tiers" | "members" | "public" | "none" | "internal" | "paid";
created_at: string;
updated_at: string | null;
active: boolean;
welcome_page_url: string | null;
stripe_prices: number[];
monthly_price: number | null;
yearly_price: number | null;
trial_days: number;
benefits?: string[] | undefined;
currency?: string | null | undefined;
}, {
id: string;
slug: string;
type: "paid" | "free";
name: string;
description: string | null;
visibility: "tiers" | "members" | "public" | "none" | "internal" | "paid";
created_at: string;
updated_at: string | null;
active: boolean;
welcome_page_url: string | null;
stripe_prices?: number[] | undefined;
monthly_price?: number | null | undefined;
yearly_price?: number | null | undefined;
benefits?: string[] | undefined;
currency?: string | null | undefined;
trial_days?: number | undefined;
}>;
declare const baseEmailSchema: z.ZodObject<{
id: z.ZodString;
uuid: z.ZodString;
status: z.ZodString;
recipient_filter: z.ZodString;
error: z.ZodOptional<z.ZodNullable<z.ZodString>>;
error_data: z.ZodNullable<z.ZodAny>;
email_count: z.ZodNumber;
delivered_count: z.ZodNumber;
opened_count: z.ZodNumber;
failed_count: z.ZodNumber;
subject: z.ZodString;
from: z.ZodString;
reply_to: z.ZodNullable<z.ZodString>;
source: z.ZodString;
html: z.ZodNullable<z.ZodString>;
plaintext: z.ZodNullable<z.ZodString>;
track_opens: z.ZodBoolean;
submitted_at: z.ZodString;
created_at: z.ZodString;
updated_at: z.ZodString;
}, "strip", z.ZodTypeAny, {
id: string;
status: string;
created_at: string;
updated_at: string;
html: string | null;
plaintext: string | null;
uuid: string;
recipient_filter: string;
email_count: number;
delivered_count: number;
opened_count: number;
failed_count: number;
subject: string;
from: string;
reply_to: string | null;
source: string;
track_opens: boolean;
submitted_at: string;
error?: string | null | undefined;
error_data?: any;
}, {
id: string;
status: string;
created_at: string;
updated_at: string;
html: string | null;
plaintext: string | null;
uuid: string;
recipient_filter: string;
email_count: number;
delivered_count: number;
opened_count: number;
failed_count: number;
subject: string;
from: string;
reply_to: string | null;
source: string;
track_opens: boolean;
submitted_at: string;
error?: string | null | undefined;
error_data?: any;
}>;
declare const baseOffersSchema: z.ZodObject<{
id: z.ZodString;
name: z.ZodDefault<z.ZodString>;
code: z.ZodString;
display_title: z.ZodOptional<z.ZodNullable<z.ZodString>>;
display_description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
type: z.ZodUnion<[z.ZodLiteral<"percent">, z.ZodLiteral<"fixed">, z.ZodLiteral<"trial">]>;
cadence: z.ZodUnion<[z.ZodLiteral<"month">, z.ZodLiteral<"year">]>;
amount: z.ZodNumber;
duration: z.ZodUnion<[z.ZodLiteral<"once">, z.ZodLiteral<"forever">, z.ZodLiteral<"repeating">, z.ZodLiteral<"trial">]>;
duration_in_months: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
currency_restriction: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
currency: z.ZodOptional<z.ZodNullable<z.ZodString>>;
status: z.ZodUnion<[z.ZodLiteral<"active">, z.ZodLiteral<"archived">]>;
redemption_count: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
tier: z.ZodObject<{
id: z.ZodString;
name: z.ZodOptional<z.ZodNullable<z.ZodString>>;
}, "strip", z.ZodTypeAny, {
id: string;
name?: string | null | undefined;
}, {
id: string;
name?: string | null | undefined;
}>;
}, "strip", z.ZodTypeAny, {
id: string;
code: string;
type: "percent" | "fixed" | "trial";
status: "active" | "archived";
name: string;
cadence: "month" | "year";
amount: number;
duration: "trial" | "once" | "forever" | "repeating";
tier: {
id: string;
name?: string | null | undefined;
};
display_title?: string | null | undefined;
display_description?: string | null | undefined;
duration_in_months?: number | null | undefined;
currency_restriction?: boolean | null | undefined;
currency?: string | null | undefined;
redemption_count?: number | null | undefined;
}, {
id: string;
code: string;
type: "percent" | "fixed" | "trial";
status: "active" | "archived";
cadence: "month" | "year";
amount: number;
duration: "trial" | "once" | "forever" | "repeating";
tier: {
id: string;
name?: string | null | undefined;
};
name?: string | undefined;
display_title?: string | null | undefined;
display_description?: string | null | undefined;
duration_in_months?: number | null | undefined;
currency_restriction?: boolean | null | undefined;
currency?: string | null | undefined;
redemption_count?: number | null | undefined;
}>;
declare const baseMembersSchema: z.ZodObject<{
id: z.ZodString;
email: z.ZodString;
name: z.ZodNullable<z.ZodString>;
note: z.ZodOptional<z.ZodNullable<z.ZodString>>;
geolocation: z.ZodOptional<z.ZodNullable<z.ZodString>>;
created_at: z.ZodString;
updated_at: z.ZodOptional<z.ZodNullable<z.ZodString>>;
labels: z.ZodArray<z.ZodObject<{
id: z.ZodString;
name: z.ZodString;
slug: z.ZodString;
created_at: z.ZodString;
updated_at: z.ZodOptional<z.ZodNullable<z.ZodString>>;
}, "strip", z.ZodTypeAny, {
id: string;
slug: string;
name: string;
created_at: string;
updated_at?: string | null | undefined;
}, {
id: string;
slug: string;
name: string;
created_at: string;
updated_at?: string | null | undefined;
}>, "many">;
subscriptions: z.ZodArray<z.ZodObject<{
id: z.ZodString;
customer: z.ZodObject<{
id: z.ZodString;
name: z.ZodNullable<z.ZodString>;
email: z.ZodString;
}, "strip", z.ZodTypeAny, {
id: string;
email: string;
name: string | null;
}, {
id: string;
email: string;
name: string | null;
}>;
status: z.ZodString;
start_date: z.ZodString;
default_payment_card_last4: z.ZodNullable<z.ZodString>;
cancel_at_period_end: z.ZodBoolean;
cancellation_reason: z.ZodNullable<z.ZodString>;
current_period_end: z.ZodString;
price: z.ZodObject<{
id: z.ZodString;
price_id: z.ZodString;
nickname: z.ZodString;
amount: z.ZodNumber;
interval: z.ZodString;
type: z.ZodString;
currency: z.ZodString;
}, "strip", z.ZodTypeAny, {
id: string;
type: string;
currency: string;
amount: number;
price_id: string;
nickname: string;
interval: string;
}, {
id: string;
type: string;
currency: string;
amount: number;
price_id: string;
nickname: string;
interval: string;
}>;
tier: z.ZodOptional<z.ZodNullable<z.ZodObject<{
name: z.ZodString;
description: z.ZodNullable<z.ZodString>;
active: z.ZodBoolean;
type: z.ZodUnion<[z.ZodLiteral<"free">, z.ZodLiteral<"paid">]>;
welcome_page_url: z.ZodNullable<z.ZodString>;
created_at: z.ZodString;
updated_at: z.ZodNullable<z.ZodString>;
stripe_prices: z.ZodEffects<z.ZodOptional<z.ZodArray<z.ZodNumber, "many">>, number[], number[] | undefined>;
monthly_price: z.ZodEffects<z.ZodOptional<z.ZodNullable<z.ZodNumber>>, number | null, number | null | undefined>;
yearly_price: z.ZodEffects<z.ZodOptional<z.ZodNullable<z.ZodNumber>>, number | null, number | null | undefined>;
benefits: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
visibility: z.ZodUnion<[z.ZodLiteral<"public">, z.ZodLiteral<"members">, z.ZodLiteral<"none">, z.ZodLiteral<"internal">, z.ZodLiteral<"paid">, z.ZodLiteral<"tiers">]>;
currency: z.ZodOptional<z.ZodNullable<z.ZodString>>;
trial_days: z.ZodDefault<z.ZodNumber>;
slug: z.ZodString;
id: z.ZodString;
}, "strip", z.ZodTypeAny, {
id: string;
slug: string;
type: "paid" | "free";
name: string;
description: string | null;
visibility: "tiers" | "members" | "public" | "none" | "internal" | "paid";
created_at: string;
updated_at: string | null;
active: boolean;
welcome_page_url: string | null;
stripe_prices: number[];
monthly_price: number | null;
yearly_price: number | null;
trial_days: number;
benefits?: string[] | undefined;
currency?: string | null | undefined;
}, {
id: string;
slug: string;
type: "paid" | "free";
name: string;
description: string | null;
visibility: "tiers" | "members" | "public" | "none" | "internal" | "paid";
created_at: string;
updated_at: string | null;
active: boolean;
welcome_page_url: string | null;
stripe_prices?: number[] | undefined;
monthly_price?: number | null | undefined;
yearly_price?: number | null | undefined;
benefits?: string[] | undefined;
currency?: string | null | undefined;
trial_days?: number | undefined;
}>>>;
offer: z.ZodOptional<z.ZodNullable<z.ZodObject<{
id: z.ZodString;
name: z.ZodDefault<z.ZodString>;
code: z.ZodString;
display_title: z.ZodOptional<z.ZodNullable<z.ZodString>>;
display_description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
type: z.ZodUnion<[z.ZodLiteral<"percent">, z.ZodLiteral<"fixed">, z.ZodLiteral<"trial">]>;
cadence: z.ZodUnion<[z.ZodLiteral<"month">, z.ZodLiteral<"year">]>;
amount: z.ZodNumber;
duration: z.ZodUnion<[z.ZodLiteral<"once">, z.ZodLiteral<"forever">, z.ZodLiteral<"repeating">, z.ZodLiteral<"trial">]>;
duration_in_months: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
currency_restriction: z.ZodOptional<z.ZodNullable<z.ZodBoolean>>;
currency: z.ZodOptional<z.ZodNullable<z.ZodString>>;
status: z.ZodUnion<[z.ZodLiteral<"active">, z.ZodLiteral<"archived">]>;
redemption_count: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
tier: z.ZodObject<{
id: z.ZodString;
name: z.ZodOptional<z.ZodNullable<z.ZodString>>;
}, "strip", z.ZodTypeAny, {
id: string;
name?: string | null | undefined;
}, {
id: string;
name?: string | null | undefined;
}>;
}, "strip", z.ZodTypeAny, {
id: string;
code: string;
type: "percent" | "fixed" | "trial";
status: "active" | "archived";
name: string;
cadence: "month" | "year";
amount: number;
duration: "trial" | "once" | "forever" | "repeating";
tier: {
id: string;
name?: string | null | undefined;
};
display_title?: string | null | undefined;
display_description?: string | null | undefined;
duration_in_months?: number | null | undefined;
currency_restriction?: boolean | null | undefined;
currency?: string | null | undefined;
redemption_count?: number | null | undefined;
}, {
id: string;
code: string;
type: "percent" | "fixed" | "trial";
status: "active" | "archived";
cadence: "month" | "year";
amount: number;
duration: "trial" | "once" | "forever" | "repeating";
tier: {
id: string;
name?: string | null | undefined;
};
name?: string | undefined;
display_title?: string | null | undefined;
display_description?: string | null | undefined;
duration_in_months?: number | null | undefined;
currency_restriction?: boolean | null | undefined;
currency?: string | null | undefined;
redemption_count?: number | null | undefined;
}>>>;
}, "strip", z.ZodTypeAny, {
id: string;
status: string;
customer: {
id: string;
email: string;
name: string | null;
};
start_date: string;
default_payment_card_last4: string | null;
cancel_at_period_end: boolean;
cancellation_reason: string | null;
current_period_end: string;
price: {
id: string;
type: string;
currency: string;
amount: number;
price_id: string;
nickname: string;
interval: string;
};
tier?: {
id: string;
slug: string;
type: "paid" | "free";
name: string;
description: string | null;
visibility: "tiers" | "members" | "public" | "none" | "internal" | "paid";
created_at: string;
updated_at: string | null;
active: boolean;
welcome_page_url: string | null;
stripe_prices: number[];
monthly_price: number | null;
yearly_price: number | null;
trial_days: number;
benefits?: string[] | undefined;
currency?: string | null | undefined;
} | null | undefined;
offer?: {
id: string;
code: string;
type: "percent" | "fixed" | "trial";
status: "active" | "archived";
name: string;
cadence: "month" | "year";
amount: number;
duration: "trial" | "once" | "forever" | "repeating";
tier: {
id: string;
name?: string | null | undefined;
};
display_title?: string | null | undefined;
display_description?: string | null | undefined;
duration_in_months?: number | null | undefined;
currency_restriction?: boolean | null | undefined;
currency?: string | null | undefined;
redemption_count?: number | null | undefined;
} | null | undefined;
}, {
id: string;
status: string;
customer: {
id: string;
email: string;
name: string | null;
};
start_date: string;
default_payment_card_last4: string | null;
cancel_at_period_end: boolean;
cancellation_reason: string | null;
current_period_end: string;
price: {
id: string;
type: string;
currency: string;
amount: number;
price_id: string;
nickname: string;
interval: string;
};
tier?: {
id: string;
slug: string;
type: "paid" | "free";
name: string;
description: string | null;
visibility: "tiers" | "members" | "public" | "none" | "internal" | "paid";
created_at: string;
updated_at: string | null;
active: boolean;
welcome_page_url: string | null;
stripe_prices?: number[] | undefined;
monthly_price?: number | null | undefined;
yearly_price?: number | null | undefined;
benefits?: string[] | undefined;
currency?: string | null | undefined;
trial_days?: number | undefined;
} | null | undefined;
offer?: {
id: string;
code: string;
type: "percent" | "fixed" | "trial";
status: "active" | "archived";
cadence: "month" | "year";
amount: number;
duration: "trial" | "once" | "forever" | "repeating";
tier: {
id: string;
name?: string | null | undefined;
};
name?: string | undefined;
display_title?: string | null | undefined;
display_description?: string | null | undefined;
duration_in_months?: number | null | undefined;
currency_restriction?: boolean | null | undefined;
currency?: string | null | undefined;
redemption_count?: number | null | undefined;
} | null | undefined;
}>, "many">;
avatar_image: z.ZodString;
email_count: z.ZodNumber;
email_opened_count: z.ZodNumber;
email_open_rate: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
status: z.ZodString;
last_seen_at: z.ZodOptional<z.ZodNullable<z.ZodString>>;
newsletters: z.ZodArray<z.ZodObject<{
name: z.ZodString;
description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
sender_name: z.ZodOptional<z.ZodNullable<z.ZodString>>;
sender_email: z.ZodOptional<z.ZodNullable<z.ZodString>>;
sender_reply_to: z.ZodString;
status: z.ZodUnion<[z.ZodLiteral<"active">, z.ZodLiteral<"archived">]>;
visibility: z.ZodUnion<[z.ZodLiteral<"public">, z.ZodLiteral<"members">]>;
subscribe_on_signup: z.ZodBoolean;
sort_order: z.ZodNumber;
header_image: z.ZodOptional<z.ZodNullable<z.ZodString>>;
show_header_icon: z.ZodBoolean;
show_header_title: z.ZodBoolean;
title_font_category: z.ZodUnion<[z.ZodLiteral<"serif">, z.ZodLiteral<"sans_serif">]>;
title_alignment: z.ZodOptional<z.ZodNullable<z.ZodString>>;
show_feature_image: z.ZodBoolean;
body_font_category: z.ZodUnion<[z.ZodLiteral<"serif">, z.ZodLiteral<"sans_serif">]>;
footer_content: z.ZodOptional<z.ZodNullable<z.ZodString>>;
show_badge: z.ZodBoolean;
created_at: z.ZodString;
updated_at: z.ZodOptional<z.ZodNullable<z.ZodString>>;
show_header_name: z.ZodBoolean;
uuid: z.ZodString;
slug: z.ZodString;
id: z.ZodString;
}, "strip", z.ZodTypeAny, {
id: string;
slug: string;
status: "active" | "archived";
name: string;
visibility: "members" | "public";
created_at: string;
uuid: string;
sender_reply_to: string;
subscribe_on_signup: boolean;
sort_order: number;
show_header_icon: boolean;
show_header_title: boolean;
title_font_category: "serif" | "sans_serif";
show_feature_image: boolean;
body_font_category: "serif" | "sans_serif";
show_badge: boolean;
show_header_name: boolean;
description?: string | null | undefined;
sender_name?: string | null | undefined;
sender_email?: string | null | undefined;
header_image?: string | null | undefined;
title_alignment?: string | null | undefined;
footer_content?: string | null | undefined;
updated_at?: string | null | undefined;
}, {
id: string;
slug: string;
status: "active" | "archived";
name: string;
visibility: "members" | "public";
created_at: string;
uuid: string;
sender_reply_to: string;
subscribe_on_signup: boolean;
sort_order: number;
show_header_icon: boolean;
show_header_title: boolean;
title_font_category: "serif" | "sans_serif";
show_feature_image: boolean;
body_font_category: "serif" | "sans_serif";
show_badge: boolean;
show_header_name: boolean;
description?: string | null | undefined;
sender_name?: string | null | undefined;
sender_email?: string | null | undefined;
header_image?: string | null | undefined;
title_alignment?: string | null | undefined;
footer_content?: string | null | undefined;
updated_at?: string | null | undefined;
}>, "many">;
}, "strip", z.ZodTypeAny, {
newsletters: {
id: string;
slug: string;
status: "active" | "archived";
name: string;
visibility: "members" | "public";
created_at: string;
uuid: string;
sender_reply_to: string;
subscribe_on_signup: boolean;
sort_order: number;
show_header_icon: boolean;
show_header_title: boolean;
title_font_category: "serif" | "sans_serif";
show_feature_image: boolean;
body_font_category: "serif" | "sans_serif";
show_badge: boolean;
show_header_name: boolean;
description?: string | null | undefined;
sender_name?: string | null | undefined;
sender_email?: string | null | undefined;
header_image?: string | null | undefined;
title_alignment?: string | null | undefined;
footer_content?: string | null | undefined;
updated_at?: string | null | undefined;
}[];
id: string;
status: string;
email: string;
name: string | null;
created_at: string;
email_count: number;
labels: {
id: string;
slug: string;
name: string;
created_at: string;
updated_at?: string | null | undefined;
}[];
subscriptions: {
id: string;
status: string;
customer: {
id: string;
email: string;
name: string | null;
};
start_date: string;
default_payment_card_last4: string | null;
cancel_at_period_end: boolean;
cancellation_reason: string | null;
current_period_end: string;
price: {
id: string;
type: string;
currency: string;
amount: number;
price_id: string;
nickname: string;
interval: string;
};
tier?: {
id: string;
slug: string;
type: "paid" | "free";
name: string;
description: string | null;
visibility: "tiers" | "members" | "public" | "none" | "internal" | "paid";
created_at: string;
updated_at: string | null;
active: boolean;
welcome_page_url: string | null;
stripe_prices: number[];
monthly_price: number | null;
yearly_price: number | null;
trial_days: number;
benefits?: string[] | undefined;
currency?: string | null | undefined;
} | null | undefined;
offer?: {
id: string;
code: string;
type: "percent" | "fixed" | "trial";
status: "active" | "archived";
name: string;
cadence: "month" | "year";
amount: number;
duration: "trial" | "once" | "forever" | "repeating";
tier: {
id: string;
name?: string | null | undefined;
};
display_title?: string | null | undefined;
display_description?: string | null | undefined;
duration_in_months?: number | null | undefined;
currency_restriction?: boolean | null | undefined;
currency?: string | null | undefined;
redemption_count?: number | null | undefined;
} | null | undefined;
}[];
avatar_image: string;
email_opened_count: number;
note?: string | null | undefined;
geolocation?: string | null | undefined;
updated_at?: string | null | undefined;
email_open_rate?: number | null | undefined;
last_seen_at?: string | null | undefined;
}, {
newsletters: {
id: string;
slug: string;
status: "active" | "archived";
name: string;
visibility: "members" | "public";
created_at: string;
uuid: string;
sender_reply_to: string;
subscribe_on_signup: boolean;
sort_order: number;
show_header_icon: boolean;
show_header_title: boolean;
title_font_category: "serif" | "sans_serif";
show_feature_image: boolean;
body_font_category: "serif" | "sans_serif";
show_badge: boolean;
show_header_name: boolean;
description?: string | null | undefined;
sender_name?: string | null | undefined;
sender_email?: string | null | undefined;
header_image?: string | null | undefined;
title_alignment?: string | null | undefined;
footer_content?: string | null | undefined;
updated_at?: string | null | undefined;
}[];
id: string;
status: string;
email: string;
name: string | null;
created_at: string;
email_count: number;
labels: {
id: string;
slug: string;
name: string;
created_at: string;
updated_at?: string | null | undefined;
}[];
subscriptions: {
id: string;
status: string;
customer: {
id: string;
email: string;
name: string | null;
};
start_date: string;
default_payment_card_last4: string | null;
cancel_at_period_end: boolean;
cancellation_reason: string | null;
current_period_end: string;
price: {
id: string;
type: string;
currency: string;
amount: number;
price_id: string;
nickname: string;
interval: string;
};
tier?: {
id: string;
slug: string;
type: "paid" | "free";
name: string;
description: string | null;
visibility: "tiers" | "members" | "public" | "none" | "internal" | "paid";
created_at: string;
updated_at: string | null;
active: boolean;
welcome_page_url: string | null;
stripe_prices?: number[] | undefined;
monthly_price?: number | null | undefined;
yearly_price?: number | null | undefined;
benefits?: string[] | undefined;
currency?: string | null | undefined;
trial_days?: number | undefined;
} | null | undefined;
offer?: {
id: string;
code: string;
type: "percent" | "fixed" | "trial";
status: "active" | "archived";
cadence: "month" | "year";
amount: number;
duration: "trial" | "once" | "forever" | "repeating";
tier: {
id: string;
name?: string | null | undefined;
};
name?: string | undefined;
display_title?: string | null | undefined;
display_description?: string | null | undefined;
duration_in_months?: number | null | undefined;
currency_restriction?: boolean | null | undefined;
currency?: string | null | undefined;
redemption_count?: number | null | undefined;
} | null | undefined;
}[];
avatar_image: string;
email_opened_count: number;
note?: string | null | undefined;
geolocation?: string | null | undefined;
updated_at?: string | null | undefined;
email_open_rate?: number | null | undefined;
last_seen_at?: string | null | undefined;
}>;
declare const baseNewsletterSchema: z.ZodObject<{
name: z.ZodString;
description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
sender_name: z.ZodOptional<z.ZodNullable<z.ZodString>>;
sender_email: z.ZodOptional<z.ZodNullable<z.ZodString>>;
sender_reply_to: z.ZodString;
status: z.ZodUnion<[z.ZodLiteral<"active">, z.ZodLiteral<"archived">]>;
visibility: z.ZodUnion<[z.ZodLiteral<"public">, z.ZodLiteral<"members">]>;
subscribe_on_signup: z.ZodBoolean;
sort_order: z.ZodNumber;
header_image: z.ZodOptional<z.ZodNullable<z.ZodString>>;
show_header_icon: z.ZodBoolean;
show_header_title: z.ZodBoolean;
title_font_category: z.ZodUnion<[z.ZodLiteral<"serif">, z.ZodLiteral<"sans_serif">]>;
title_alignment: z.ZodOptional<z.ZodNullable<z.ZodString>>;
show_feature_image: z.ZodBoolean;
body_font_category: z.ZodUnion<[z.ZodLiteral<"serif">, z.ZodLiteral<"sans_serif">]>;
footer_content: z.ZodOptional<z.ZodNullable<z.ZodString>>;
show_badge: z.ZodBoolean;
created_at: z.ZodString;
updated_at: z.ZodOptional<z.ZodNullable<z.ZodString>>;
show_header_name: z.ZodBoolean;
uuid: z.ZodString;
slug: z.ZodString;
id: z.ZodString;
}, "strip", z.ZodTypeAny, {
id: string;
slug: string;
status: "active" | "archived";
name: string;
visibility: "members" | "public";
created_at: string;
uuid: string;
sender_reply_to: string;
subscribe_on_signup: boolean;
sort_order: number;
show_header_icon: boolean;
show_header_title: boolean;
title_font_category: "serif" | "sans_serif";
show_feature_image: boolean;
body_font_category: "serif" | "sans_serif";
show_badge: boolean;
show_header_name: boolean;
description?: string | null | undefined;
sender_name?: string | null | undefined;
sender_email?: string | null | undefined;
header_image?: string | null | undefined;
title_alignment?: string | null | undefined;
footer_content?: string | null | undefined;
updated_at?: string | null | undefined;
}, {
id: string;
slug: string;
status: "active" | "archived";
name: string;
visibility: "members" | "public";
created_at: string;
uuid: string;
sender_reply_to: string;
subscribe_on_signup: boolean;
sort_order: number;
show_header_icon: boolean;
show_header_title: boolean;
title_font_category: "serif" | "sans_serif";
show_feature_image: boolean;
body_font_category: "serif" | "sans_serif";
show_badge: boolean;
show_header_name: boolean;
description?: string | null | undefined;
sender_name?: string | null | undefined;
sender_email?: string | null | undefined;
header_image?: string | null | undefined;
title_alignment?: string | null | undefined;
footer_content?: string | null | undefined;
updated_at?: string | null | undefined;
}>;
declare const baseSiteSchema: z.ZodObject<{
title: z.ZodString;
description: z.ZodString;
logo: z.ZodNullable<z.ZodString>;
version: z.ZodString;
url: z.ZodString;
}, "strip", z.ZodTypeAny, {
version: string;
url: string;
description: string;
title: string;
logo: string | null;
}, {
version: string;
url: string;
description: string;
title: string;
logo: string | null;
}>;
type Split<Str, Separator extends string> = Str extends `${infer Start}${Separator}${infer Rest}` ? [Start, ...Split<Rest, Separator>] : [Str];
type BrowseOrder<S, Shape> = S extends [infer Head, ...infer Tail] ? Tail extends [] ? OrderPredicate<Head, Shape> : `${OrderPredicate<Head, Shape>},${BrowseOrder<Tail, Shape>}` : S extends string ? OrderPredicate<S, Shape> : never;
type OrderPredicate<S, Shape> = S extends string ? S extends `${infer Field} ${infer Direction}` ? Field extends keyof Shape ? Direction extends "ASC" | "DESC" | "asc" | "desc" ? `${Field} ${Direction}` : never : never : S extends keyof Shape ? `${S}` : never : never;
type FilterQuerySeparator = "+" | "," | "(" | ")";
type FilterQueryOperators = `-` | `>` | `<` | `~`;
type FilterQuerySetOperators = `-`;
type FieldOrSubField<S> = S extends `${infer Field}.${string}` ? Field : S;
type BrowseFilter<S, Shape> = S extends string ? S extends `${infer Field}:${infer Rest}` ? FieldOrSubField<Field> extends keyof Shape ? Rest extends `${FilterQuerySetOperators}[${infer Values}]` ? `${Field}:${FilterQuerySetOperators}[${Values}]` : Rest extends `[${infer Values}]` ? `${Field}:[${Values}]` : Rest extends `${FilterQuerySetOperators}[${infer Values}]${FilterQuerySeparator}${infer NextQuery}` ? `${Field}:${FilterQuerySetOperators}[${Values}]${FilterQuerySeparator}${BrowseFilter<NextQuery, Shape>}` : Rest extends `[${infer Values}]${FilterQuerySeparator}${infer NextQuery}` ? `${Field}:[${Values}]${FilterQuerySeparator}${BrowseFilter<NextQuery, Shape>}` : Rest extends `${infer Value}${FilterQuerySeparator}${infer NextQuery}` ? `${Field}:${Value}${FilterQuerySeparator}${BrowseFilter<NextQuery, Shape>}` : Rest extends `${infer Value}` ? Value extends string ? `${Field}:${Value}` : never : S : never : never : never;
type BrowseParams<P, Shape> = P extends {
order: infer Order;
} ? P extends {
filter: infer Filter;
} ? Omit<P, "order" | "filter"> & {
order: BrowseOrder<Split<Order, ",">, Shape>;
} & {
filter: BrowseFilter<Filter, Shape>;
} : Omit<P, "order"> & {
order: BrowseOrder<Split<Order, ",">, Shape>;
} : P extends {
filter: infer Filter;
} ? Omit<P, "filter"> & {
filter: BrowseFilter<Filter, Shape>;
} : P;
declare const browseParamsSchema: z.ZodObject<{
order: z.ZodOptional<z.ZodString>;
limit: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"all">, z.ZodEffects<z.ZodNumber, number, number>]>>;
page: z.ZodOptional<z.ZodEffects<z.ZodNumber, number, number>>;
filter: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
order?: string | undefined;
limit?: number | "all" | undefined;
page?: number | undefined;
filter?: string | undefined;
}, {
order?: string | undefined;
limit?: number | "all" | undefined;
page?: number | undefined;
filter?: string | undefined;
}>;
type BrowseParamsSchema = z.infer<typeof browseParamsSchema>;
declare const parseBrowseParams: <P, Shape extends z.ZodRawShape, IncludeShape extends z.ZodRawShape>(args: P, schema: z.ZodObject<Shape, z.UnknownKeysParam, z.ZodTypeAny, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<Shape>, { [k_1 in keyof z.baseObjectOutputType<Shape>]: undefined extends z.baseObjectOutputType<Shape>[k_1] ? never : k_1; }[keyof Shape]> extends infer T ? { [k in keyof T]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<Shape>, { [k_1 in keyof z.baseObjectOutputType<Shape>]: undefined extends z.baseObjectOutputType<Shape>[k_1] ? never : k_1; }[keyof Shape]>[k]; } : never, z.baseObjectInputType<Shape> extends infer T_1 ? { [k_2 in keyof T_1]: z.baseObjectInputType<Shape>[k_2]; } : never>, includeSchema?: z.ZodObject<IncludeShape, z.UnknownKeysParam, z.ZodTypeAny, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<IncludeShape>, { [k_4 in keyof z.baseObjectOutputType<IncludeShape>]: undefined extends z.baseObjectOutputType<IncludeShape>[k_4] ? never : k_4; }[keyof IncludeShape]> extends infer T_2 ? { [k_3 in keyof T_2]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<IncludeShape>, { [k_4 in keyof z.baseObjectOutputType<IncludeShape>]: undefined extends z.baseObjectOutputType<IncludeShape>[k_4] ? never : k_4; }[keyof IncludeShape]>[k_3]; } : never, z.baseObjectInputType<IncludeShape> extends infer T_3 ? { [k_5 in keyof T_3]: z.baseObjectInputType<IncludeShape>[k_5]; } : never> | undefined) => {
page?: number | undefined;
limit?: number | "all" | undefined;
order?: string | undefined;
filter?: string | undefined;
};
declare type Mask<Obj> = {
[k in keyof Obj]?: true;
};
declare type InferResponseDataShape<T> = T extends { success: true; data: infer D } ? D : never;
declare type InferFetcherDataShape<T extends { fetch: () => Promise<any> }> = InferResponseDataShape<
Awaited<ReturnType<T["fetch"]>>
>;
type IsAny<T> = 0 extends 1 & T ? true : false;
type ContentFormats = "html" | "mobiledoc" | "plaintext" | "lexical";
declare class BrowseFetcher<const Resource extends APIResource = any, Params extends BrowseParamsSchema = any, Fields extends Mask<OutputShape> = any, BaseShape extends ZodRawShape = any, OutputShape extends ZodRawShape = any, IncludeShape extends ZodRawShape = any> {
protected resource: Resource;
protected config: {
schema: z.ZodObject<BaseShape>;
output: z.ZodObject<OutputShape>;
include: z.ZodObject<IncludeShape>;
};
private _params;
protected httpClient: HTTPClient;
protected _urlParams: Record<string, string>;
protected _urlSearchParams: URLSearchParams | undefined;
protected _includeFields: (keyof IncludeShape)[];
constructor(resource: Resource, config: {
schema: z.ZodObject<BaseShape>;
output: z.ZodObject<OutputShape>;
include: z.ZodObject<IncludeShape>;
}, _params: {
browseParams?: Params;
include?: (keyof IncludeShape)[];
fields?: Fields;
formats?: string[];
}, httpClient: HTTPClient);
/**
* Lets you choose output format for the content of Post and Pages resources
* The choices are html, mobiledoc or plaintext. It will transform the output of the fetcher to a new shape
* with the selected formats required.
*
* @param formats html, mobiledoc or plaintext
* @returns A new Fetcher with the fixed output shape and the formats specified
*/
formats<Formats extends Mask<Pick<OutputShape, ContentFormats>>>(formats: z.noUnrecognized<Formats, OutputShape>): BrowseFetcher<Resource, Params, Fields, BaseShape, { [k_1 in z.objectUtil.noNeverKeys<{ [k in keyof OutputShape]: k extends keyof Formats ? z.deoptional<OutputShape[k]> : OutputShape[k]; }>]: k_1 extends keyof OutputShape ? { [k in keyof OutputShape]: k extends keyof Formats ? z.deoptional<OutputShape[k]> : OutputShape[k]; }[k_1] : never; }, IncludeShape>;
/**
* Let's you include special keys into the Ghost API Query to retrieve complimentary info
* The available keys are defined by the Resource include schema, will not care about unknown keys.
* Returns a new Fetcher with an Output shape modified with the include keys required.
*
* @param include Include specific keys from the include shape
* @returns A new Fetcher with the fixed output shape and the formats specified
*/
include<Includes extends Mask<IncludeShape>>(include: z.noUnrecognized<Includes, IncludeShape>): BrowseFetcher<Resource, Params, Fields, BaseShape, { [k_1 in z.objectUtil.noNeverKeys<{ [k in keyof OutputShape]: k extends keyof Includes ? z.deoptional<OutputShape[k]> : OutputShape[k]; }>]: k_1 extends keyof OutputShape ? { [k in keyof OutputShape]: k extends keyof Includes ? z.deoptional<OutputShape[k]> : OutputShape[k]; }[k_1] : never; }, IncludeShape>;
/**
* Let's you strip the output to only the specified keys of your choice that are in the config Schema
* Will not care about unknown keys and return a new Fetcher with an Output shape with only the selected keys.
*
* @param fields Any keys from the resource Schema
* @returns A new Fetcher with the fixed output shape having only the selected Fields
*/
fields<Fields extends Mask<OutputShape>>(fields: z.noUnrecognized<Fields, OutputShape>): BrowseFetcher<Resource, Params, Fields, BaseShape, Pick<OutputShape, Extract<keyof OutputShape, keyof Fields>>, IncludeShape>;
getResource(): Resource;
getParams(): {
browseParams?: Params | undefined;
include?: (keyof IncludeShape)[] | undefined;
fields?: Fields | undefined;
formats?: string[] | undefined;
};
getOutputFields(): string[];
getURLSearchParams(): URLSearchParams | undefined;
getIncludes(): (keyof IncludeShape)[];
getFormats(): string[];
private _buildUrlParams;
private _urlBrowseParams;
private _getResultSchema;
fetch(options?: RequestInit): Promise<{
data: (z.objectUtil.addQuestionMarks<z.baseObjectOutputType<OutputShape>, { [k_1 in keyof z.baseObjectOutputType<OutputShape>]: undefined extends z.baseObjectOutputType<OutputShape>[k_1] ? never : k_1; }[keyof OutputShape]> extends infer T ? { [k in keyof T]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<OutputShape>, { [k_1 in keyof z.baseObjectOutputType<OutputShape>]: undefined extends z.baseObjectOutputType<OutputShape>[k_1] ? never : k_1; }[keyof OutputShape]>[k]; } : never)[];
success: true;
meta: {
pagination: {
pages: number;
page: number;
limit: number | "all";
total: number;
prev: number | null;
next: number | null;
};
};
} | {
success: false;
errors: {
message: string;
type: string;
}[];
}>;
paginate(options?: RequestInit): Promise<{
current: {
data: (z.objectUtil.addQuestionMarks<z.baseObjectOutputType<OutputShape>, { [k_1 in keyof z.baseObjectOutputType<OutputShape>]: undefined extends z.baseObjectOutputType<OutputShape>[k_1] ? never : k_1; }[keyof OutputShape]> extends infer T ? { [k in keyof T]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<OutputShape>, { [k_1 in keyof z.baseObjectOutputType<OutputShape>]: undefined extends z.baseObjectOutputType<OutputShape>[k_1] ? never : k_1; }[keyof OutputShape]>[k]; } : never)[];
success: true;
meta: {
pagination: {
pages: number;
page: number;
limit: number | "all";
total: number;
prev: number | null;
next: number | null;
};
};
} | {
success: false;
errors: {
message: string;
type: string;
}[];
};
next: BrowseFetcher<Resource, Params, Fields, BaseShape, OutputShape, IncludeShape> | undefined;
}>;
}
declare class ReadFetcher<const Resource extends APIResource = any, Fields extends Mask<OutputShape> = any, BaseShape extends ZodRawShape = any, OutputShape extends ZodRawShape = any, IncludeShape extends ZodRawShape = any> {
protected resource: Resource;
protected config: {
schema: z.ZodObject<BaseShape>;
output: z.ZodObject<OutputShape>;
include: z.ZodObject<IncludeShape>;
};
private _params;
protected httpClient: HTTPClient;
protected _urlParams: Record<string, string>;
protected _urlSearchParams: URLSearchParams | undefined;
protected _pathnameIdentity: string | undefined;
protected _includeFields: (keyof IncludeShape)[];
constructor(resource: Resource, config: {
schema: z.ZodObject<BaseShape>;
output: z.ZodObject<OutputShape>;
include: z.ZodObject<IncludeShape>;
}, _params: {
identity: GhostIdentityInput;
include?: (keyof IncludeShape)[];
fields?: Fields;
formats?: string[];
}, httpClient: HTTPClient);
/**
* Lets you choose output format for the content of Post and Pages resources
* The choices are html, mobiledoc or plaintext. It will transform the output of the fetcher to a new shape
* with the selected formats required.
*
* @param formats html, mobiledoc or plaintext
* @returns A new Fetcher with the fixed output shape and the formats specified
*/
formats<Formats extends Mask<Pick<OutputShape, ContentFormats>>>(formats: z.noUnrecognized<Formats, OutputShape>): ReadFetcher<Resource, Fields, BaseShape, { [k_1 in z.objectUtil.noNeverKeys<{ [k in keyof OutputShape]: k extends keyof Formats ? z.deoptional<OutputShape[k]> : OutputShape[k]; }>]: k_1 extends keyof OutputShape ? { [k in keyof OutputShape]: k extends keyof Formats ? z.deoptional<OutputShape[k]> : OutputShape[k]; }[k_1] : never; }, IncludeShape>;
/**
* Let's you include special keys into the Ghost API Query to retrieve complimentary info
* The available keys are defined by the Resource include schema, will not care about unknown keys.
* Returns a new Fetcher with an Output shape modified with the include keys required.
*
* @param include Include specific keys from the include shape
* @returns A new Fetcher with the fixed output shape and the formats specified
*/
include<Includes extends Mask<IncludeShape>>(include: z.noUnrecognized<Includes, IncludeShape>): ReadFetcher<Resource, Fields, BaseShape, { [k_1 in z.objectUtil.noNeverKeys<{ [k in keyof OutputShape]: k extends keyof Includes ? z.deoptional<OutputShape[k]> : OutputShape[k]; }>]: k_1 extends keyof OutputShape ? { [k in keyof OutputShape]: k extends keyof Includes ? z.deoptional<OutputShape[k]> : OutputShape[k]; }[k_1] : never; }, IncludeShape>;
/**
* Let's you strip the output to only the specified keys of your choice that are in the config Schema
* Will not care about unknown keys and return a new Fetcher with an Output shape with only the selected keys.
*
* @param fields Any keys from the resource Schema
* @returns A new Fetcher with the fixed output shape having only the selected Fields
*/
fields<Fields extends Mask<OutputShape>>(fields: z.noUnrecognized<Fields, OutputShape>): ReadFetcher<Resource, Fields, BaseShape, Pick<OutputShape, Extract<keyof OutputShape, keyof Fields>>, IncludeShape>;
getResource(): Resource;
getParams(): {
identity: {
slug?: string | undefined;
id?: string | undefined;
email?: string | undefined;
};
include?: (keyof IncludeShape)[] | undefined;
fields?: Fields | undefined;
formats?: string[] | undefined;
};
getOutputFields(): string[];
getIncludes(): (keyof IncludeShape)[];
getFormats(): string[];
private _buildUrlParams;
fetch(options?: RequestInit): Promise<{ [k_1 in keyof z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
success: z.ZodLiteral<true>;
data: z.ZodObject<OutputShape, z.UnknownKeysParam, z.ZodTypeAny, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<OutputShape>, { [k_1 in keyof z.baseObjectOutputType<OutputShape>]: undefined extends z.baseObjectOutputType<OutputShape>[k_1] ? never : k_1; }[keyof OutputShape]> extends infer T ? { [k in keyof T]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<OutputShape>, { [k_1 in keyof z.baseObjectOutputType<OutputShape>]: undefined extends z.baseObjectOutputType<OutputShape>[k_1] ? never : k_1; }[keyof OutputShape]>[k]; } : never, z.baseObjectInputType<OutputShape> extends infer T_1 ? { [k_2 in keyof T_1]: z.baseObjectInputType<OutputShape>[k_2]; } : never>;
}>, "success" | (undefined extends (z.objectUtil.addQuestionMarks<z.baseObjectOutputType<OutputShape>, { [k_1 in keyof z.baseObjectOutputType<OutputShape>]: undefined extends z.baseObjectOutputType<OutputShape>[k_1] ? never : k_1; }[keyof OutputShape]> extends infer T_2 ? { [k in keyof T_2]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<OutputShape>, { [k_1 in keyof z.baseObjectOutputType<OutputShape>]: undefined extends z.baseObjectOutputType<OutputShape>[k_1] ? never : k_1; }[keyof OutputShape]>[k]; } : never) ? never : "data")>]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
success: z.ZodLiteral<true>;
data: z.ZodObject<OutputShape, z.UnknownKeysParam, z.ZodTypeAny, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<OutputShape>, { [k_1 in keyof z.baseObjectOutputType<OutputShape>]: undefined extends z.baseObjectOutputType<OutputShape>[k_1] ? never : k_1; }[keyof OutputShape]> extends infer T ? { [k in keyof T]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<OutputShape>, { [k_1 in keyof z.baseObjectOutputType<OutputShape>]: undefined extends z.baseObjectOutputType<OutputShape>[k_1] ? never : k_1; }[keyof OutputShape]>[k]; } : never, z.baseObjectInputType<OutputShape> extends infer T_1 ? { [k_2 in keyof T_1]: z.baseObjectInputType<OutputShape>[k_2]; } : never>;
}>, "success" | (undefined extends (z.objectUtil.addQuestionMarks<z.baseObjectOutputType<OutputShape>, { [k_1 in keyof z.baseObjectOutputType<OutputShape>]: undefined extends z.baseObjectOutputType<OutputShape>[k_1] ? never : k_1; }[keyof OutputShape]> extends infer T_2 ? { [k in keyof T_2]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<OutputShape>, { [k_1 in keyof z.baseObjectOutputType<OutputShape>]: undefined extends z.baseObjectOutputType<OutputShape>[k_1] ? never : k_1; }[keyof OutputShape]>[k]; } : never) ? never : "data")>[k_1]; } | {
success: false;
errors: {
message: string;
type: string;
}[];
}>;
}
declare class BasicFetcher<const Resource extends APIResource = any, OutputShape extends ZodTypeAny = any> {
protected resource: Resource;
protected config: {
output: OutputShape;
};
protected httpClient: HTTPClient;
constructor(resource: Resource, config: {
output: OutputShape;
}, httpClient: HTTPClient);
getResource(): Resource;
fetch(options?: RequestInit): Promise<{ [k_1 in keyof z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
success: z.ZodLiteral<true>;
data: OutputShape;
}>, "success" | (undefined extends OutputShape["_output"] ? never : "data")>]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
success: z.ZodLiteral<true>;
data: OutputShape;
}>, "success" | (undefined extends OutputShape["_output"] ? never : "data")>[k_1]; } | {
success: false;
errors: {
message: string;
type: string;
}[];
}>;
}
declare class MutationFetcher<const Resource extends APIResource = any, OutputShape extends ZodRawShape = any, ParamsShape extends ZodTypeAny = any, const HTTPVerb extends "POST" | "PUT" = "POST"> {
protected resource: Resource;
protected config: {
output: z.ZodObject<OutputShape>;
paramsShape?: ParamsShape;
};
private _params;
protected _options: {
method: HTTPVerb;
body: Record<string, unknown>;
};
protected httpClient: HTTPClient;
protected _urlParams: Record<string, string>;
protected _urlSearchParams: URLSearchParams | undefined;
protected _pathnameIdentity: string | undefined;
constructor(resource: Resource, config: {
output: z.ZodObject<OutputShape>;
paramsShape?: ParamsShape;
}, _params: ({
id?: string;
} & ParamsShape["_output"]) | undefined, _options: {
method: HTTPVerb;
body: Record<string, unknown>;
}, httpClient: HTTPClient);
getResource(): Resource;
getParams(): ({
id?: string | undefined;
} & ParamsShape["_output"]) | undefined;
private _buildUrlParams;
submit(): Promise<{ [k_1 in keyof z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
success: z.ZodLiteral<true>;
data: z.ZodObject<OutputShape, z.UnknownKeysParam, z.ZodTypeAny, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<OutputShape>, { [k_1 in keyof z.baseObjectOutputType<OutputShape>]: undefined extends z.baseObjectOutputType<OutputShape>[k_1] ? never : k_1; }[keyof OutputShape]> extends infer T ? { [k in keyof T]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<OutputShape>, { [k_1 in keyof z.baseObjectOutputType<OutputShape>]: undefined extends z.baseObjectOutputType<OutputShape>[k_1] ? never : k_1; }[keyof OutputShape]>[k]; } : never, z.baseObjectInputType<OutputShape> extends infer T_1 ? { [k_2 in keyof T_1]: z.baseObjectInputType<OutputShape>[k_2]; } : never>;
}>, "success" | (undefined extends (z.objectUtil.addQuestionMarks<z.baseObjectOutputType<OutputShape>, { [k_1 in keyof z.baseObjectOutputType<OutputShape>]: undefined extends z.baseObjectOutputType<OutputShape>[k_1] ? never : k_1; }[keyof OutputShape]> extends infer T_2 ? { [k in keyof T_2]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<OutputShape>, { [k_1 in keyof z.baseObjectOutputType<OutputShape>]: undefined extends z.baseObjectOutputType<OutputShape>[k_1] ? never : k_1; }[keyof OutputShape]>[k]; } : never) ? never : "data")>]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
success: z.ZodLiteral<true>;
data: z.ZodObject<OutputShape, z.UnknownKeysParam, z.ZodTypeAny, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<OutputShape>, { [k_1 in keyof z.baseObjectOutputType<OutputShape>]: undefined extends z.baseObjectOutputType<OutputShape>[k_1] ? never : k_1; }[keyof OutputShape]> extends infer T ? { [k in keyof T]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<OutputShape>, { [k_1 in keyof z.baseObjectOutputType<OutputShape>]: undefined extends z.baseObjectOutputType<OutputShape>[k_1] ? never : k_1; }[keyof OutputShape]>[k]; } : never, z.baseObjectInputType<OutputShape> extends infer T_1 ? { [k_2 in keyof T_1]: z.baseObjectInputType<OutputShape>[k_2]; } : never>;
}>, "success" | (undefined extends (z.objectUtil.addQuestionMarks<z.baseObjectOutputType<OutputShape>, { [k_1 in keyof z.baseObjectOutputType<OutputShape>]: undefined extends z.baseObjectOutputType<OutputShape>[k_1] ? never : k_1; }[keyof OutputShape]> extends infer T_2 ? { [k in keyof T_2]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<OutputShape>, { [k_1 in keyof z.baseObjectOutputType<OutputShape>]: undefined extends z.baseObjectOutputType<OutputShape>[k_1] ? never : k_1; }[keyof OutputShape]>[k]; } : never) ? never : "data")>[k_1]; } | {
success: false;
errors: {
message: string;
type: string;
context?: string | null | undefined;
}[];
}>;
}
declare class DeleteFetcher<const Resource extends APIResource = any> {
protected resource: Resource;
private _params;
protected httpClient: HTTPClient;
protected _pathnameIdentity: string | undefined;
constructor(resource: Resource, _params: {
id: string;
}, httpClient: HTTPClient);
getResource(): Resource;
getParams(): {
id: string;
};
private _buildPathnameIdentity;
submit(): Promise<{
success: true;
} | {
success: false;
errors: {
message: string;
type: string;
context?: string | null | undefined;
}[];
}>;
}
/**
* API Composer contains all methods, pick and choose.
*/
declare class APIComposer<const Resource extends APIResource = any, Shape extends ZodRawShape = any, IdentityShape extends z.ZodTypeAny = any, IncludeShape extends ZodRawShape = any, CreateShape extends ZodTypeAny = any, CreateOptions extends ZodTypeAny = any, UpdateShape extends ZodTypeAny = any, UpdateOptions extends ZodTypeAny = any> {
protected resource: Resource;
protected config: {
schema: z.ZodObject<Shape>;
identitySchema: IdentityShape;
include: z.ZodObject<IncludeShape>;
createSchema?: CreateShape;
createOptionsSchema?: CreateOptions;
updateSchema?: UpdateShape;
updateOptionsSchema?: UpdateOptions;
};
protected httpClient: HTTPClient;
constructor(resource: Resource, config: {
schema: z.ZodObject<Shape>;
identitySchema: IdentityShape;
include: z.ZodObject<IncludeShape>;
createSchema?: CreateShape;
createOptionsSchema?: CreateOptions;
updateSchema?: UpdateShape;
updateOptionsSchema?: UpdateOptions;
}, httpClient: HTTPClient);
/**
* Browse function that accepts browse params order, filter, page and limit. Will return an instance
* of BrowseFetcher class.
*/
browse<const OrderStr extends string, const FilterStr extends string, const P extends {
order?: OrderStr;
limit?: number | "all";
page?: number | string;
filter?: FilterStr;
}>(options?: BrowseParams<P, Shape & IncludeShape>): BrowseFetcher<Resource, {
page?: number | undefined;
limit?: number | "all" | undefined;
order?: string | undefined;
filter?: string | undefined;
}, any, Shape, Shape, IncludeShape>;
/**
* Read function that accepts Identify fields like id, slug or email. Will return an instance
* of ReadFetcher class.
*/
read(options: z.infer<IdentityShape>): ReadFetcher<Resource, any, Shape, Shape, IncludeShape>;
add(data: z.input<CreateShape>, options?: z.infer<CreateOptions>): Promise<{ [k_1 in keyof z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
success: z.ZodLiteral<true>;
data: z.ZodObject<Shape, z.UnknownKeysParam, z.ZodTypeAny, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<Shape>, { [k_1 in keyof z.baseObjectOutputType<Shape>]: undefined extends z.baseObjectOutputType<Shape>[k_1] ? never : k_1; }[keyof Shape]> extends infer T ? { [k in keyof T]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<Shape>, { [k_1 in keyof z.baseObjectOutputType<Shape>]: undefined extends z.baseObjectOutputType<Shape>[k_1] ? never : k_1; }[keyof Shape]>[k]; } : never, z.baseObjectInputType<Shape> extends infer T_1 ? { [k_2 in keyof T_1]: z.baseObjectInputType<Shape>[k_2]; } : never>;
}>, "success" | (undefined extends (z.objectUtil.addQuestionMarks<z.baseObjectOutputType<Shape>, { [k_1 in keyof z.baseObjectOutputType<Shape>]: undefined extends z.baseObjectOutputType<Shape>[k_1] ? never : k_1; }[keyof Shape]> extends infer T_2 ? { [k in keyof T_2]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<Shape>, { [k_1 in keyof z.baseObjectOutputType<Shape>]: undefined extends z.baseObjectOutputType<Shape>[k_1] ? never : k_1; }[keyof Shape]>[k]; } : never) ? never : "data")>]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
success: z.ZodLiteral<true>;
data: z.ZodObject<Shape, z.UnknownKeysParam, z.ZodTypeAny, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<Shape>, { [k_1 in keyof z.baseObjectOutputType<Shape>]: undefined extends z.baseObjectOutputType<Shape>[k_1] ? never : k_1; }[keyof Shape]> extends infer T ? { [k in keyof T]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<Shape>, { [k_1 in keyof z.baseObjectOutputType<Shape>]: undefined extends z.baseObjectOutputType<Shape>[k_1] ? never : k_1; }[keyof Shape]>[k]; } : never, z.baseObjectInputType<Shape> extends infer T_1 ? { [k_2 in keyof T_1]: z.baseObjectInputType<Shape>[k_2]; } : never>;
}>, "success" | (undefined extends (z.objectUtil.addQuestionMarks<z.baseObjectOutputType<Shape>, { [k_1 in keyof z.baseObjectOutputType<Shape>]: undefined extends z.baseObjectOutputType<Shape>[k_1] ? never : k_1; }[keyof Shape]> extends infer T_2 ? { [k in keyof T_2]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<Shape>, { [k_1 in keyof z.baseObjectOutputType<Shape>]: undefined extends z.baseObjectOutputType<Shape>[k_1] ? never : k_1; }[keyof Shape]>[k]; } : never) ? never : "data")>[k_1]; } | {
success: false;
errors: {
message: string;
type: string;
context?: string | null | undefined;
}[];
}>;
edit(id: string, data: IsAny<UpdateShape> extends true ? Partial<z.input<CreateShape>> : z.input<UpdateShape>, options?: z.infer<UpdateOptions>): Promise<{ [k_1 in keyof z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
success: z.ZodLiteral<true>;
data: z.ZodObject<Shape, z.UnknownKeysParam, z.ZodTypeAny, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<Shape>, { [k_1 in keyof z.baseObjectOutputType<Shape>]: undefined extends z.baseObjectOutputType<Shape>[k_1] ? never : k_1; }[keyof Shape]> extends infer T ? { [k in keyof T]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<Shape>, { [k_1 in keyof z.baseObjectOutputType<Shape>]: undefined extends z.baseObjectOutputType<Shape>[k_1] ? never : k_1; }[keyof Shape]>[k]; } : never, z.baseObjectInputType<Shape> extends infer T_1 ? { [k_2 in keyof T_1]: z.baseObjectInputType<Shape>[k_2]; } : never>;
}>, "success" | (undefined extends (z.objectUtil.addQuestionMarks<z.baseObjectOutputType<Shape>, { [k_1 in keyof z.baseObjectOutputType<Shape>]: undefined extends z.baseObjectOutputType<Shape>[k_1] ? never : k_1; }[keyof Shape]> extends infer T_2 ? { [k in keyof T_2]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<Shape>, { [k_1 in keyof z.baseObjectOutputType<Shape>]: undefined extends z.baseObjectOutputType<Shape>[k_1] ? never : k_1; }[keyof Shape]>[k]; } : never) ? never : "data")>]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<{
success: z.ZodLiteral<true>;
data: z.ZodObject<Shape, z.UnknownKeysParam, z.ZodTypeAny, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<Shape>, { [k_1 in keyof z.baseObjectOutputType<Shape>]: undefined extends z.baseObjectOutputType<Shape>[k_1] ? never : k_1; }[keyof Shape]> extends infer T ? { [k in keyof T]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<Shape>, { [k_1 in keyof z.baseObjectOutputType<Shape>]: undefined extends z.baseObjectOutputType<Shape>[k_1] ? never : k_1; }[keyof Shape]>[k]; } : never, z.baseObjectInputType<Shape> extends infer T_1 ? { [k_2 in keyof T_1]: z.baseObjectInputType<Shape>[k_2]; } : never>;
}>, "success" | (undefined extends (z.objectUtil.addQuestionMarks<z.baseObjectOutputType<Shape>, { [k_1 in keyof z.baseObjectOutputType<Shape>]: undefined extends z.baseObjectOutputType<Shape>[k_1] ? never : k_1; }[keyof Shape]> extends infer T_2 ? { [k in keyof T_2]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<Shape>, { [k_1 in keyof z.baseObjectOutputType<Shape>]: undefined extends z.baseObjectOutputType<Shape>[k_1] ? never : k_1; }[keyof Shape]>[k]; } : never) ? never : "data")>[k_1]; } | {
success: false;
errors: {
message: string;
type: string;
context?: string | null | undefined;
}[];
}>;
delete(id: string): Promise<{
success: true;
} | {
success: false;
errors: {
message: string;
type: string;
context?: string | null | undefined;
}[];
}>;
access<const Keys extends keyof this>(keys: Keys[]): Pick<this, Keys>;
}
/**
* Parse a Fields object and generate a new Output Schema
*
* @param schema Base Resource Schema
* @param fields Object containing fields to be picked with true as value
* @returns new schema with only the fields specified in the fields object
*/
declare const schemaWithPickedFields: <Shape extends z.ZodRawShape, Fields extends Mask<Shape>>(schema: z.ZodObject<Shape, z.UnknownKeysParam, z.ZodTypeAny, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<Shape>, { [k_1 in keyof z.baseObjectOutputType<Shape>]: undefined extends z.baseObjectOutputType<Shape>[k_1] ? never : k_1; }[keyof Shape]> extends infer T ? { [k in keyof T]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<Shape>, { [k_1 in keyof z.baseObjectOutputType<Shape>]: undefined extends z.baseObjectOutputType<Shape>[k_1] ? never : k_1; }[keyof Shape]>[k]; } : never, z.baseObjectInputType<Shape> extends infer T_1 ? { [k_2 in keyof T_1]: z.baseObjectInputType<Shape>[k_2]; } : never>, fields?: Fields | undefined) => z.ZodObject<Pick<Shape, Extract<keyof Shape, keyof Fields>>, z.UnknownKeysParam, z.ZodTypeAny, z.objectUtil.addQuestionMarks<z.baseObjectOutputType<Pick<Shape, Extract<keyof Shape, keyof Fields>>>, (z.baseObjectOutputType<Pick<Shape, Extract<keyof Shape, keyof Fields>>> extends infer T_3 extends object ? { [k_4 in keyof T_3]: undefined extends z.baseObjectOutputType<Pick<Shape, Extract<keyof Shape, keyof Fields>>>[k_4] ? never : k_4; } : never)[Extract<keyof Shape, keyof Fields>]> extends infer T_2 ? { [k_3 in keyof T_2]: z.objectUtil.addQuestionMarks<z.baseObjectOutputType<Pick<Shape, Extract<keyof Shape, keyof Fields>>>, (z.baseObjectOutputType<Pick<Shape, Extract<keyof Shape, keyof Fields>>> extends infer T_3 extends object ? { [k_4 in keyof T_3]: undefined extends z.baseObjectOutputType<Pick<Shape, Extract<keyof Shape, keyof Fields>>>[k_4] ? never : k_4; } : never)[Extract<keyof Shape, keyof Fields>]>[k_3]; } : never, z.baseObjectInputType<Pick<Shape, Extract<keyof Shape, keyof Fields>>> extends infer T_4 ? { [k_5 in keyof T_4]: z.baseObjectInputType<Pick<Shape, Extract<keyof Shape, keyof Fields>>>[k_5]; } : never>;
export { APIComposer, type APICredentials, type APIEndpoint, type APIResource, type APIVersions, type AdminAPICredentials, BasicFetcher, BrowseFetcher, type BrowseFilter, type BrowseOrder, type BrowseParams, type BrowseParamsSchema, type ContentAPICredentials, DeleteFetcher, type FieldOrSubField, type FilterQueryOperators, type FilterQuerySeparator, type FilterQuerySetOperators, type GhostIdentity, type GhostIdentityInput, type GhostMeta, type GhostRequestConfig, HTTPClient, type HTTPClientOptions, type IHTTPClient, type InferFetcherDataShape, type InferResponseDataShape, type IsAny, type Mask, MutationFetcher, type OrderPredicate, ReadFetcher, type TAPIVersion, adminAPICredentialsSchema, apiVersionsSchema, baseAuthorsSchema, baseEmailSchema, baseMembersSchema, baseNewsletterSchema, baseOffersSchema, basePagesSchema, basePostsSchema, baseSettingsSchema, baseSiteSchema, baseTagsSchema, baseTiersSchema, browseParamsSchema, contentAPICredentialsSchema, emailOrIdSchema, ghostCodeInjectionSchema, ghostExcerptSchema, ghostFacebookSchema, ghostIdentityInputSchema, ghostIdentitySchema, ghostMetaSchema, ghostMetadataSchema, ghostSocialMediaSchema, ghostTwitterSchema, ghostVisibilitySchema, identitySchema, parseBrowseParams, schemaWithPickedFields, slugOrIdSchema };