UNPKG

@draftbox-co/gatsby-ghost-novela-theme

Version:

A Gatsby theme plugin for creating blogs from headless Ghost CMS.

124 lines (111 loc) 2.29 kB
import React from "react"; export interface IPaginator { pageCount: number; index: number; pathPrefix: string; } interface IGatsbyImage { src: string; base64?: string; srcWebp?: string; srcSet?: string; srcSetWebp?: string; tracedSVG?: string; } interface IGatsbyImageFluid extends IGatsbyImage { maxHeight: number; maxWidth: number; } interface IGatsbyImageFixed extends IGatsbyImage { height: number; width: number; } // export interface IAuthor { // authorsPage?: boolean; // featured?: boolean; // name: string; // slug: string; // bio: string; // avatar: { // image: IGatsbyImageFluid; // full: IGatsbyImageFluid; // }; // } export interface IAuthor { name: string; slug: string; bio: string; profile_image: string; twitter: string; facebook: string; social: { name: string; url: string }[]; } export interface ITag { name: string; slug: string; description: string; visibility: boolean; postCount: number; feature_image: string; } export interface IArticle { title: string; html?: string; mdx: string; og_title: string; featured: boolean; og_description: string; feature_image: string; twitter_title: string; twitter_description: string; meta_title: string; meta_description: string; primary_author: { name: string; slug: string; }; published_at: string; updated_at: string; slug: string; authors: IAuthor[]; tags: ITag[]; excerpt: string; body: string; id: string; localFeatureImage: { childImageSharp: any; publicURL: string; }; hero: { full: IGatsbyImageFluid; preview: IGatsbyImageFluid; regular: IGatsbyImageFluid; seo: string; }; readingTime: string; date: string; } interface IArticleQuery { edges: { node: IArticle; }[]; } export interface IProgress { height: number; offset: number; title: string; mode: string; onClose?: () => void; } export type Icon = React.FC<{ fill: string; }>; export type Template = React.FC<{ pageContext: { article: IArticle; authors: IAuthor[]; mailchimp: boolean; next: IArticle[]; }; location: Location; }>;