kt-extendscript-builder
Version:
Vite based builder for transpile TypeScript to ExtendScript
31 lines (30 loc) • 1.19 kB
TypeScript
import { RollupOptions } from 'rollup';
import { KTBuilderOption } from './lib/options/KTBuilderOptions';
import { UserConfig } from 'vite';
export interface PonyfillItem {
find: string;
replace: string;
inject: string;
}
type OptionTypeToTsType<T extends KTBuilderOption['type'], D = undefined> = T extends 'string' ? string : T extends 'boolean' ? boolean : T extends 'array' ? string[] : never;
export type BuildOptions = {
[K in KTBuilderOption['name']]: Extract<KTBuilderOption, {
name: K;
}> extends infer O ? O extends {
type: infer T;
default: infer D;
} ? T extends KTBuilderOption['type'] ? OptionTypeToTsType<T> : never : O extends {
type: infer T;
} ? T extends KTBuilderOption['type'] ? OptionTypeToTsType<T> | undefined : never : never : never;
};
export declare const defaultBuildOptions: Partial<BuildOptions>;
export type DependencyRule = (options: Partial<BuildOptions>) => Partial<BuildOptions>;
export interface ExtendedViteConfig extends UserConfig {
extendScriptConfig?: any;
}
export interface ViteEsConfig {
build: () => Promise<void>;
watch: () => void;
config: RollupOptions;
}
export {};