broccoli-node-api
TypeScript types for the Broccoli Node Api
Exports
Node
interface Node {
__broccoliFeatures__: FeatureSet;
__broccoliGetInfo__: (builderFeatures: FeatureSet) => NodeInfo;
}
Node Documentation
FeatureSet
interface FeatureSet {
[feature: string]: boolean;
}
NodeInfo
type NodeInfo = SourceNodeInfo | TransformNodeInfo;
NodeInfo Documentation
NodeType
type NodeType = "source" | "transform";
NodeInfoCommon
interface NodeInfoCommon<T extends NodeType> {
nodeType: T;
name: string;
annotation: string | null | undefined;
instantiationStack: string;
}
TransformNodeInfo
interface TransformNodeInfo extends NodeInfoCommon<"transform"> {
inputNodes: Node[];
setup(inputPaths: string[], outputPath: string, cachePath: string): void;
getCallbackObject(): CallbackObject;
persistentOutput: boolean;
needsCache: boolean;
}
TransformNodeInfo Documentation
CallbackObject
interface CallbackObject {
build(): Promise<void>;
}
SourceNodeInfo
interface SourceNodeInfo extends NodeInfoCommon<"source"> {
sourceDirectory: string;
watched: boolean;
}
SourceNodeInfo Documentation