webapp/src/pages/types.ts
Ilya Y 9f7d5d04b6
Feature/gallery upload (#117)
* upgrade Swiper
2023-07-02 08:08:42 +03:00

45 lines
933 B
TypeScript

// in a separate file to avoid circular dependencies
import type { Author, Chat, Shout, Topic } from '../graphql/types.gen'
// all the things (she said) that could be passed from the server
export type PageProps = {
randomTopics?: Topic[]
article?: Shout
layoutShouts?: Shout[]
authorShouts?: Shout[]
topicShouts?: Shout[]
homeShouts?: Shout[]
author?: Author
allAuthors?: Author[]
topic?: Topic
allTopics?: Topic[]
searchQuery?: string
layout?: LayoutType
// other types?
searchResults?: Shout[]
chats?: Chat[]
}
export type RootSearchParams = {
modal: string
lang: string
}
export type UploadFile = {
source: string
name: string
size: number
file: File
}
export type LayoutType = 'article' | 'audio' | 'video' | 'image' | 'literature'
export type FileTypeToUpload = 'image' | 'video' | 'doc'
export type MediaItem = {
url: string
title: string
body: string
source?: string
}