aboutsummaryrefslogtreecommitdiffstats
path: root/src/ts/types/blog.ts
diff options
context:
space:
mode:
authorArmand Philippot <git@armandphilippot.com>2021-12-15 12:16:34 +0100
committerArmand Philippot <git@armandphilippot.com>2021-12-15 17:06:55 +0100
commit0fa8ae55c52852c34c9143a6ec43c954c6404df1 (patch)
tree32c5421025591386632c50200ce6bed3ce6e62b7 /src/ts/types/blog.ts
parent15d247cb0d52d9c091fa040fe1d9d45e9e506050 (diff)
chore: retrieve posts list on blog page
Diffstat (limited to 'src/ts/types/blog.ts')
-rw-r--r--src/ts/types/blog.ts33
1 files changed, 33 insertions, 0 deletions
diff --git a/src/ts/types/blog.ts b/src/ts/types/blog.ts
new file mode 100644
index 0000000..345deed
--- /dev/null
+++ b/src/ts/types/blog.ts
@@ -0,0 +1,33 @@
+import { ArticlePreview, ArticlePreviewResponse } from './articles';
+import { PageInfo } from './pagination';
+
+export type PostsListEdge = {
+ cursor: string;
+ node: ArticlePreviewResponse;
+};
+
+export type PostsListResponse = {
+ posts: {
+ edges: PostsListEdge[];
+ pageInfo: PageInfo;
+ };
+};
+
+export type PostsList = {
+ posts: ArticlePreview[];
+ pageInfo: PageInfo;
+};
+
+export type fetchPostsListReturn = (
+ first?: number,
+ after?: string
+) => Promise<PostsListResponse>;
+
+export type getPostsListReturn = (
+ first?: number,
+ after?: string
+) => Promise<PostsList>;
+
+export type BlogPageProps = {
+ data: PostsList;
+};