@ikona/cli
Version:
49 lines (46 loc) • 1.11 kB
TypeScript
import { Config as Config$1 } from 'svgo';
export { Config as SVGOConfig } from 'svgo';
type Prettify<T> = {
[K in keyof T]: T[K];
} & unknown;
type DeepPartial<T> = {
[P in keyof T]?: T[P] extends Record<string, unknown> ? DeepPartial<T[P]> : T[P];
};
interface Config {
verbose: boolean;
/**
* Directory where the generated files
* Default: .ikona
*/
outputDir: string;
/**
* Force generation of files
*/
force: boolean;
icons: {
optimize: boolean;
inputDir: string;
spriteOutputDir: string;
/**
* Hash sprite file name and export it as a JS constant.
*/
hash: boolean;
svgoConfig?: Config$1;
};
illustrations: {
inputDir: string;
extensions: string[];
};
cwd: string;
}
type FileConfig = Prettify<DeepPartial<Config>>;
interface CliConfig {
verbose?: boolean;
v?: boolean;
["out-dir"]?: string;
optimize?: boolean;
force?: boolean;
hash?: boolean;
cwd?: string;
}
export type { CliConfig, Config, FileConfig, Prettify };