UNPKG

noodl-loader

Version:

Loader for noodl applications

22 lines (21 loc) 966 B
import Asset from './asset'; import type NoodlLoader from '../loader'; import type { YAMLNode } from '../types'; import * as t from './extractor-types'; export interface CreateExtractorOptions { } export interface ExtractOptions<As extends 'array' | 'object'> { as?: As; include?: t.ExtractAssetPreset | t.ExtractAssetPreset[] | 'any'; prepare?: (state: Record<string, any>) => Record<string, any> | undefined | void; use?: t.ExtractFn | { extract: t.ExtractFn; once?: boolean; } | (t.ExtractFn | { extract: t.ExtractFn; once?: boolean; })[]; } declare function createExtractor(loader: NoodlLoader): <As extends "object" | "array" = "object">(value: YAMLNode, { as, include, prepare, use: useProp }?: ExtractOptions<As>) => Promise<As extends "array" ? Asset<Record<string, any>>[] : Record<string, Asset<Record<string, any>>>>; export default createExtractor; export { createExtractor };