broccoli-eyeglass
Version:
Sass compiler for Broccoli with Eyeglass Integration
43 lines • 2.16 kB
TypeScript
import BroccoliSassCompiler, { BroccoliSassOptions, CompilationDetails, SassImplementation } from "./broccoli_sass_compiler";
import BroccoliPlugin = require("broccoli-plugin");
import Eyeglass = require("eyeglass");
import { EyeglassOptions } from "eyeglass/lib/util/Options";
import EyeglassModule from "eyeglass/lib/modules/EyeglassModule";
declare type BroccoliEyeglassOptions = BroccoliSassOptions & EyeglassOptions & {
/**
* Optional. A string or array of strings indicating the subdirectories where
* assets for the project can be found. This calls `eyeglass.assets.addSource`
* for each directory specified. If the options passed for these are not
* sufficient, use the `configureEyeglass` callback to call `addSource` with the
* options you need.
*/
assets?: string | Array<string>;
/**
* The subdirectory that assets are in relative to the `httpRoot` when
* generating urls to them.
*/
assetsHttpPrefix?: string;
configureEyeglass?: (eyeglass: Eyeglass, sass: SassImplementation, details: CompilationDetails) => unknown;
/**
* Whether to render relative links to assets. Defaults to false.
*/
relativeAssets?: boolean;
};
declare class EyeglassCompiler extends BroccoliSassCompiler {
private configureEyeglass;
private relativeAssets;
private assetDirectories;
private assetsHttpPrefix;
private _assetImportCacheStats;
private _dependenciesHash;
constructor(inputTrees: BroccoliPlugin.BroccoliNode | Array<BroccoliPlugin.BroccoliNode>, options: BroccoliEyeglassOptions);
handleNewFile(details: CompilationDetails): void;
cachableOptions(rawOptions: Eyeglass.EyeglassOptions): Eyeglass.EyeglassOptions;
static currentVersion(): string;
dependenciesHash(_srcDir: string, _relativeFilename: string, options: Eyeglass.EyeglassOptions): string;
keyForSourceFile(srcDir: string, relativeFilename: string, options: Eyeglass.EyeglassOptions): string;
cacheAssetImports(key: string, getValue: () => string): string;
hashForJs(mod: EyeglassModule): string;
}
export = EyeglassCompiler;
//# sourceMappingURL=index.d.ts.map