gatsby-source-filesystem
Version:
Gatsby source plugin for building websites from local data. Markdown, JSON, images, YAML, CSV, and dozens of other data types supported.
110 lines (98 loc) • 2.24 kB
TypeScript
import { Node, GatsbyCache } from "gatsby"
/**
* @see https://www.gatsbyjs.com/plugins/gatsby-source-filesystem/?=files#createfilepath
*/
export function createFilePath(args: CreateFilePathArgs): string
/**
* @see https://www.gatsbyjs.com/plugins/gatsby-source-filesystem/?=files#createremotefilenode
*/
export function createRemoteFileNode(
args: CreateRemoteFileNodeArgs
): Promise<FileSystemNode>
/**
* @see https://www.gatsbyjs.com/plugins/gatsby-source-filesystem/?=files#createfilenodefrombuffer
*/
export function createFileNodeFromBuffer(
args: CreateFileNodeFromBufferArgs
): Promise<FileSystemNode>
export interface CreateFilePathArgs {
node: Node
getNode: Function
basePath?: string
trailingSlash?: boolean
}
export interface CreateRemoteFileNodeArgs {
url: string
cache?: GatsbyCache
getCache?: Function
createNode: Function
createNodeId: Function
parentNodeId?: string
auth?: {
htaccess_user: string
htaccess_pass: string
}
httpHeaders?: object
ext?: string
name?: string
}
export interface CreateFileNodeFromBufferArgs {
buffer: Buffer
cache?: GatsbyCache
getCache?: Function
createNode: Function
createNodeId: Function
parentNodeId?: string
hash?: string
ext?: string
name?: string
}
export interface FileSystemNode extends Node {
absolutePath: string
accessTime: string
birthTime: Date
changeTime: string
extension: string
modifiedTime: string
prettySize: string
relativeDirectory: string
relativePath: string
sourceInstanceName: string
// parsed path typings
base: string
dir: string
ext: string
name: string
root: string
// stats
atime: Date
atimeMs: number
/**
* @deprecated Use `birthTime` instead
*/
birthtime: Date
/**
* @deprecated Use `birthTime` instead
*/
birthtimeMs: number
ctime: Date
ctimeMs: number
gid: number
mode: number
mtime: Date
mtimeMs: number
size: number
uid: number
}
export interface FileSystemConfig {
resolve: "gatsby-source-filesystem"
options: FileSystemOptions
}
/**
* @see https://www.gatsbyjs.com/plugins/gatsby-source-filesystem/?=filesy#options
*/
interface FileSystemOptions {
name: string
path: string
ignore?: string[]
}