import type { z } from "zod"

import type {
  blocksSchema,
  campaignPageRefsSchema,
  campaignPageSchema,
} from "@/server/routers/contentstack/campaignPage/output"
import type { essentialsSchema } from "@/server/routers/contentstack/schemas/blocks/essentials"

export interface GetCampaignPageData
  extends z.input<typeof campaignPageSchema> {}
export interface CampaignPage extends z.output<typeof campaignPageSchema> {}
export type CampaignPageData = CampaignPage["campaign_page"]

export interface GetCampaignPageRefsData
  extends z.input<typeof campaignPageRefsSchema> {}

export interface CampaignPageRefs
  extends z.output<typeof campaignPageRefsSchema> {}

export type Block = z.output<typeof blocksSchema>

export type EssentialsBlock = z.output<typeof essentialsSchema>["essentials"]
