@hyext/builder-neorn
Version:
neo react-native builder for hyext
76 lines (75 loc) • 1.9 kB
TypeScript
import { RN_VERSION, DEPRECATED_RN_VERSION } from '@hyext/matrix-compiler/dist/constants';
export declare type NeoBuildConfigItem = {
entry: string;
extType: string;
registerComponent?: string[];
baseUrlMap?: {
ios: string;
android: string;
};
baseMd5Map?: {
ios: string;
android: string;
};
};
export declare type NeoBuildConfig = NeoBuildConfigItem[];
export interface NeoBuilderInfo {
name: string;
config: NeoBuilderConfig;
}
export interface NeoBuilderConfig {
hostId?: 'huyaext' | 'legacy';
buildConfig: NeoBuildConfig;
}
export interface ProviderOptions {
projectRoot: string;
buildConfig: NeoBuildConfig;
dependencies: {
[key: string]: any;
};
RNVersion: typeof RN_VERSION | typeof DEPRECATED_RN_VERSION;
isDev: boolean;
}
export interface InfoProvider {
hostId: string;
isBuildConfigValid: boolean;
shouldInstallSDKVer: {
[name: string]: string;
};
SDKVersionValidation: {
isValid: boolean;
message?: string;
};
projectConfig: {
[name: string]: any;
};
SDKAlias: {
[alias: string]: string[];
};
getBaseModulesPath: (extType: string) => string;
getBaseModules: (extType: string) => Set<string>;
getSDKVerByExtType: (extType: string) => string;
groupBuildConfigFn: (config: NeoBuildConfigItem) => string;
}
export interface HostExtType {
hostId: string;
hostName: string;
hostDesc: string;
extTypes: TypeInfo[];
}
export interface TypeInfo {
typeName: string;
typeTag: string;
hostId: string;
runTerminal: string;
npmPackageName: string;
}
export interface CreateAppPayload {
projectName: string;
contextPath: string;
config: any;
inputPath: string;
outputPath: string;
publicPath: string;
hostExtTypes: HostExtType[];
}