Overview
File Store Interface
Table of contents
- BasicFileStore (interface)
- Container (interface)
- ContainerCreateInput (interface)
- ContainerData (interface)
- ContainerQueryData (interface)
- ContainerUpdateInput (interface)
- ContainerUpdateInputParam (interface)
- ContainerUpsertInputParam (interface)
- ContainerWhereUniqueInput (interface)
- ExtendFileStore (interface)
- File (interface)
- FileCreateInput (interface)
- FileData (interface)
- FileQueryData (interface)
- FileUpdateInput (interface)
- FileUpdateInputParam (interface)
- FileUpsertInput (interface)
- FileUpsertInputParam (interface)
- FileWhereInput (interface)
- FileWhereUniqueInput (interface)
- FolderData (interface)
- FolderWhereUniqueInput (interface)
- GlobWhereInput (interface)
- MonadFileStore (interface)
- PresignedUrl (interface)
- TextFile (interface)
- monadFileStore (function)
BasicFileStore (interface)
Signature
interface BasicFileStore {
/**
*Clear all content on the given folder
*/
clearFolder: MonadFunction<FolderWhereUniqueInput, void>
/**
*Get a container detail
*/
container: MonadFunction<ContainerWhereUniqueInput, ContainerData>
/**
*Lists all containers
*/
containers: () => MonadNode<Array<ContainerQueryData>>
/**
*Creates a container
*/
createContainer: MonadFunction<ContainerCreateInput, ContainerData>
/**
*Create a file
*/
createFile: MonadFunction<FileCreateInput, FileData>
/**
*Removes a container
*/
deleteContainer: MonadFunction<ContainerWhereUniqueInput, void>
/**
*Removes an file
*/
deleteFile: MonadFunction<FileWhereUniqueInput, void>
/**
*Checks if a container exists.
*/
existContainer: MonadFunction<ContainerWhereUniqueInput, boolean>
/**
*Check a file exist
*/
existFile: MonadFunction<FileWhereUniqueInput, boolean>
/**
*Get a file info
*/
file: MonadFunction<FileWhereUniqueInput, FileData>
/**
*Requests an object. The method returns a Promise that resolves to a Readable Stream containing the data.
*/
fileStream: MonadFunction<FileWhereUniqueInput, Stream>
/**
*Get files and folders in a given folder
*/
folders: MonadFunction<FolderWhereUniqueInput, FolderData>
/**
*Query file with `glob`
*/
glob: MonadFunction<GlobWhereInput, Array<FileData>>
/**
*Update a container.
*/
updateContainer: MonadFunction<ContainerUpdateInputParam, ContainerData>
/**
*Update a file content and path
*/
updateFile: MonadFunction<FileUpdateInputParam, FileData>
}
Added in v0.2.0
Container (interface)
Container
The contains file and folder
Signature
interface Container extends ContainerWhereUniqueInput {
/**
*Option
*/
option?: Record<string, any>
}
Added in v0.2.0
ContainerCreateInput (interface)
Input Type when create a contianer
Signature
interface ContainerCreateInput extends Container {}
Added in v0.2.0
ContainerData (interface)
Return Type when create or update a contianer
Signature
interface ContainerData extends ContainerWhereUniqueInput {}
Added in v0.2.0
ContainerQueryData (interface)
Return Type when search contianer
Signature
interface ContainerQueryData extends ContainerWhereUniqueInput {}
Added in v0.2.0
ContainerUpdateInput (interface)
Input Data Type when update a contianer
Signature
interface ContainerUpdateInput extends ContainerWhereUniqueInput {}
Added in v0.2.0
ContainerUpdateInputParam (interface)
Input Type for update a container
Signature
interface ContainerUpdateInputParam {
data: ContainerUpdateInput
where: ContainerWhereUniqueInput
}
Added in v0.2.0
ContainerUpsertInputParam (interface)
Input Type for upsert a container
Signature
interface ContainerUpsertInputParam {
create: ContainerCreateInput
update: ContainerUpdateInput
where: ContainerWhereUniqueInput
}
Added in v0.2.0
ContainerWhereUniqueInput (interface)
Container unique id
Signature
interface ContainerWhereUniqueInput {
/**
*Name of the container
*/
name: string
}
Added in v0.2.0
ExtendFileStore (interface)
Auto build some function with BasicFileStore
Signature
interface ExtendFileStore {
/**
*query file
*/
files: MonadFunction<FileWhereInput, Array<FileQueryData>>
/**
*Get a file text content.
*/
readTextFile: MonadFunction<FileWhereUniqueInput & { encoding?: string }, TextFile>
/**
*Get some file text content.
*/
readTextFiles: MonadFunction<FileWhereUniqueInput[] & { encoding?: string }, TextFile[]>
/**
*upsert a container
*/
upsertContainer: MonadFunction<ContainerUpsertInputParam, ContainerData>
/**
*upsert a file
*/
upsertFile: MonadFunction<FileUpsertInputParam, FileData>
}
Added in v0.2.0
File (interface)
Signature
interface File {
container: string
data: Stream | string | Buffer
encoding?: string
folders?: Array<string>
lastModified: string
name: string
size: number
}
Added in v0.2.0
FileCreateInput (interface)
Input Type when create a file
Signature
interface FileCreateInput extends FileWhereUniqueInput {
/**
*content
*/
data: string | Buffer | Stream
/**
*encoding
*/
encoding?: string
}
Added in v0.2.0
FileData (interface)
A File that no contain content
Signature
interface FileData extends FileWhereUniqueInput {
/**
*Date when the file was last modified
*/
lastModified: string
/**
*Size in bytes of the file
*/
size: number
}
Added in v0.2.0
FileQueryData (interface)
Return Type When query file
Signature
interface FileQueryData extends FileData {}
Added in v0.2.0
FileUpdateInput (interface)
Input Data Type when update a file
Signature
interface FileUpdateInput {
container: string
data?: Stream | string | Buffer
encoding?: string
folders?: Array<string>
name: string
}
Added in v0.2.0
FileUpdateInputParam (interface)
Input Type when update a file
Signature
interface FileUpdateInputParam {
data: FileUpdateInput
where: FileWhereUniqueInput
}
Added in v0.2.0
FileUpsertInput (interface)
Signature
interface FileUpsertInput {
create: FileCreateInput
update: FileUpdateInput
where: FileWhereUniqueInput
}
Added in v0.2.0
FileUpsertInputParam (interface)
Input Type when upsert a file
Signature
interface FileUpsertInputParam {
create: FileCreateInput
update: FileUpdateInput
where: FileWhereUniqueInput
}
Added in v0.2.0
FileWhereInput (interface)
File Type when serach some file
Signature
interface FileWhereInput {
AND?: Array<FileWhereInput>
NOT?: Array<FileWhereInput>
OR?: Array<FileWhereInput>
container?: string
container_between?: string
container_contains?: string
container_ends_with?: string
container_gt?: string
container_gte?: string
container_in?: string
container_lt?: string
container_lte?: string
container_not?: string
container_not_contains?: string
container_not_ends_with?: string
container_not_in?: string
container_not_starts_with?: string
container_starts_with?: string
lastModified?: string
lastModified_between?: string
lastModified_gt?: string
lastModified_gte?: string
lastModified_lt?: string
lastModified_lte?: string
lastModified_not?: string
name?: string
name_between?: string
name_contains?: string
name_ends_with?: string
name_gt?: string
name_gte?: string
name_in?: string
name_lt?: string
name_lte?: string
name_not?: string
name_not_contains?: string
name_not_ends_with?: string
name_not_in?: string
name_not_starts_with?: string
name_starts_with?: string
size?: number
size_between?: number
size_gt?: number
size_gte?: number
size_lt?: number
size_lte?: number
size_not?: number
}
Added in v0.2.0
FileWhereUniqueInput (interface)
File unique ID
Signature
interface FileWhereUniqueInput {
/**
*the container
*/
container: string
/**
*folders
*/
folders: string[]
/**
*name
*/
name: string
}
Added in v0.2.0
FolderData (interface)
Signature
interface FolderData {
files: FileData[]
folders: string[]
}
Added in v0.2.0
FolderWhereUniqueInput (interface)
Folder unique id
Signature
interface FolderWhereUniqueInput {
container: string
folders: string[]
}
Added in v0.2.0
GlobWhereInput (interface)
Signature
interface GlobWhereInput {
container: string
folders?: string[]
pattern: string[] | string
}
Added in v0.2.0
MonadFileStore (interface)
Monad FileStore
Signature
interface MonadFileStore extends BasicFileStore, ExtendFileStore {}
Added in v0.2.0
PresignedUrl (interface)
File Store Url
Signature
interface PresignedUrl {
/**
*Returns a URL that clients (e.g. browsers) can use to request an object
*from the server with a GET request, even if the object is private.
*/
presignedGetUrl: MonadFunction<FileWhereUniqueInput & { ttl?: number }, string>
/**
*Returns a URL that clients (e.g. browsers) can use for PUT operations on an object in the server, even if the object is private.
*/
presignedPutUrl: MonadFunction<FileWhereUniqueInput & { ttl?: number; metadata?: object }, string>
}
Added in v0.2.0
TextFile (interface)
Signature
interface TextFile extends FileCreateInput {
data: string
}
Added in v0.2.0
monadFileStore (function)
Build a MonadFileStore instance from BasicFileStore
Signature
export const monadFileStore = (C: BasicFileStore): MonadFileStore => ...
Added in v0.2.0