1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054 |
- /**
- * Cocos Creator 编辑器模块
- * @author 陈皮皮(ifaswind)
- * @version 20210312
- * @see https://gitee.com/ifaswind/eazax-ccc/blob/master/declarations/editor.d.ts
- */
- declare module Editor {
- /**
- * Log the normal message and show on the console. The method will send ipc message editor:console-log to all windows.
- * @param args Whatever arguments the message needs
- */
- function log(...args: any): void;
- /**
- * Log the normal message and show on the console. The method will send ipc message editor:console-log to all windows.
- * @param args Whatever arguments the message needs
- */
- function info(...args: any): void;
- /**
- * Log the warnning message and show on the console, it also shows the call stack start from the function call it. The method will send ipc message editor:console-warn to all windows.
- * @param args Whatever arguments the message needs
- */
- function warn(...args: any): void;
- /**
- * Log the error message and show on the console, it also shows the call stack start from the function call it. The method will sends ipc message editor:console-error to all windows.
- * @param args Whatever arguments the message needs
- */
- function error(...args: any): void;
- /**
- * Log the success message and show on the console The method will send ipc message editor:console-success to all windows.
- * @param args Whatever arguments the message needs
- */
- function success(...args: any): void;
- /**
- * Require the module by Editor.url. This is good for module exists in package, since the absolute path of package may be variant in different machine.
- * @param url
- */
- function require(url: string): any;
- /**
- * Returns the file path (if it is registered in custom protocol) or url (if it is a known public protocol).
- * @param url
- * @param encode
- */
- function url(url: string, encode?: string): string;
- function T(key: string): string;
- }
- declare module Editor {
- readonly let appPath: string;
- readonly let frameworkPath: string;
- readonly let importPath: string;
- readonly let isWin32: boolean;
- readonly let isDarwin: boolean;
- readonly let lang: string;
- readonly let libraryPath: string;
- readonly let sceneScripts: { [packageName: string]: string };
- }
- declare module Editor {
- /**
- * 渲染进程
- */
- module RendererProcess {
- /**
- * AssetDB singleton class in renderer process, you can access the instance with `Editor.assetdb`.
- */
- class AssetDB {
- /**
- * The remote AssetDB instance of main process, same as `Editor.remote.assetdb`.
- */
- readonly remote: Remote;
- /**
- * The library path.
- */
- readonly library: string;
- /**
- * Reveal given url in native file system.
- * @param url
- */
- explore(url: string): string;
- /**
- * Reveal given url's library file in native file system.
- * @param url
- */
- exploreLib(url: string): string;
- /**
- * Get native file path by url.
- * @param url
- * @param cb The callback function.
- */
- queryPathByUrl(url: string, cb?: (err: any, path: any) => void): void;
- /**
- * Get uuid by url.
- * @param url
- * @param cb The callback function.
- */
- queryUuidByUrl(url: string, cb?: (err: any, uuid: any) => void): void;
- /**
- * Get native file path by uuid.
- * @param uuid
- * @param cb The callback function.
- */
- queryPathByUuid(uuid: string, cb?: (err: any, path: any) => void): void;
- /**
- * Get asset url by uuid.
- * @param uuid
- * @param cb The callback function.
- */
- queryUrlByUuid(uuid: string, cb?: (err: any, url: any) => void): void;
- /**
- * Get asset info by uuid.
- * @param uuid
- * @param cb The callback function.
- */
- queryInfoByUuid(uuid: string, cb?: (err: any, info: any) => void): void;
- /**
- * Get meta info by uuid.
- * @param uuid
- * @param cb The callback function.
- */
- queryMetaInfoByUuid(uuid: string, cb?: (err: any, info: any) => void): void;
- /**
- * Query all assets from asset-db.
- * @param cb The callback function.
- */
- deepQuery(cb?: (err: any, results: any[]) => void): void;
- /**
- * Query assets by url pattern and asset-type.
- * @param pattern The url pattern.
- * @param assetTypes The asset type(s).
- * @param cb The callback function.
- */
- queryAssets(pattern: string, assetTypes: string | string[], cb?: (err: any, results: any[]) => void): void;
- /**
- * Import files outside asset-db to specific url folder.
- * @param rawfiles Rawfile path list.
- * @param destUrl The url of dest folder.
- * @param showProgress Show progress or not.
- * @param cb The callbak function.
- */
- import(rawfiles: string[], destUrl: string, showProgress?: boolean, cb?: (err: any, result: any) => void): void;
- /**
- * Create asset in specific url by sending string data to it.
- * @param uuid
- * @param metaJson
- * @param cb the callback function.
- */
- create(url: string, data: string, cb?: (err: any, result: any) => void): void;
- /**
- * Move asset from src to dest.
- * @param srcUrl
- * @param destUrl
- * @param showMessageBox
- */
- move(srcUrl: string, destUrl: string, showMessageBox?: boolean): void;
- /**
- * Delete assets by url list.
- * @param urls
- */
- delete(urls: string[]): void;
- /**
- * Save specific asset by sending string data.
- * @param url
- * @param data
- * @param cb the callback function.
- */
- saveExists(url: string, data: string, cb?: (err: any, result: any) => void): void;
- /**
- * Create or save assets by sending string data. If the url is already existed, it will be changed with new data. The behavior is same with method saveExists. Otherwise, a new asset will be created. The behavior is same with method create.
- * @param url
- * @param data
- * @param cb the callback function.
- */
- createOrSave(url: string, data: string, cb?: (err: any, result: any) => void): void;
- /**
- * Save specific meta by sending meta's json string.
- * @param uuid
- * @param metaJson
- * @param cb the callback function.
- */
- saveMeta(uuid: string, metaJson: string, cb?: (err: any, result: any) => void): void;
- /**
- * Refresh the assets in url, and return the results.
- * @param url
- * @param cb
- */
- refresh(url: string, cb?: (err: any, results: any[]) => void): void;
- }
- }
- /**
- * 主进程
- */
- module MainProcess {
- /**
- * AssetDB singleton class in main process, you can access the instance with `Editor.assetdb`.
- */
- class AssetDB {
- /**
- * Return uuid by url. If uuid not found, it will return null.
- * @param url
- */
- urlToUuid(url: string): string;
- /**
- * Return uuid by file path. If uuid not found, it will return null.
- * @param fspath
- */
- fspathToUuid(fspath: string): string;
- /**
- * Return file path by uuid. If file path not found, it will return null.
- * @param url
- */
- uuidToFspath(url: string): string;
- /**
- * Return url by uuid. If url not found, it will return null.
- * @param uuid
- */
- uuidToUrl(uuid: string): string;
- /**
- * Return url by file path. If file path not found, it will return null.
- * @param fspath
- */
- fspathToUrl(fspath: string): string;
- /**
- * Return file path by url. If url not found, it will return null.
- * @param url
- */
- urlToFspath(url: string): string;
- /**
- * Check existance by url.
- * @param url
- */
- exists(url: string): string;
- /**
- * Check existance by uuid.
- * @param uuid
- */
- existsByUuid(uuid: string): string;
- /**
- * Check existance by path.
- * @param fspath
- */
- existsByPath(fspath: string): string;
- /**
- * Check whether asset for a given url is a sub asset.
- * @param url
- */
- isSubAsset(url: string): boolean;
- /**
- * Check whether asset for a given uuid is a sub asset.
- * @param uuid
- */
- isSubAssetByUuid(uuid: string): boolean;
- /**
- * Check whether asset for a given path is a sub asset.
- * @param fspath
- */
- isSubAssetByPath(fspath: string): boolean;
- /**
- * Check whether asset contains sub assets for a given url.
- * @param url
- */
- containsSubAssets(url: string): boolean;
- /**
- * Check whether asset contains sub assets for a given uuid.
- * @param uuid
- */
- containsSubAssetsByUuid(uuid: string): boolean;
- /**
- * Check whether asset contains sub assets for a given path.
- * @param fspath
- */
- containsSubAssetsByPath(fspath: string): boolean;
- /**
- * Return asset info by a given url.
- * @param url
- */
- assetInfo(url: string): AssetInfo;
- /**
- * Return asset info by a given uuid.
- * @param uuid
- */
- assetInfoByUuid(uuid: string): AssetInfo;
- /**
- * Return asset info by a given file path.
- * @param fspath
- */
- assetInfoByPath(fspath: string): AssetInfo;
- /**
- * Return all sub assets info by url if the url contains sub assets.
- * @param url
- */
- subAssetInfos(url: string): AssetInfo[];
- /**
- * Return all sub assets info by uuid if the uuid contains sub assets.
- * @param uuid
- */
- subAssetInfosByUuid(uuid: string): AssetInfo[];
- /**
- * Return all sub assets info by path if the path contains sub assets.
- * @param fspath
- */
- subAssetInfosByPath(fspath: string): AssetInfo[];
- /**
- * Return meta instance by a given url.
- * @param url
- */
- loadMeta(url: string): MetaBase;
- /**
- * Return meta instance by a given uuid.
- * @param uuid
- */
- loadMetaByUuid(uuid: string): MetaBase;
- /**
- * Return meta instance by a given path.
- * @param fspath
- */
- loadMetaByPath(fspath: string): MetaBase;
- /**
- * Return whether a given url is reference to a mount.
- * @param url
- */
- isMount(url: string): boolean;
- /**
- * Return whether a given path is reference to a mount.
- * @param fspath
- */
- isMountByPath(fspath: string): boolean;
- /**
- * Return whether a given uuid is reference to a mount.
- * @param uuid
- */
- isMountByUuid(uuid: string): boolean;
- /**
- * Return mount info by url.
- * @param url
- */
- mountInfo(url: string): MountInfo;
- /**
- * Return mount info by uuid.
- * @param uuid
- */
- mountInfoByUuid(uuid: string): MountInfo;
- /**
- * Return mount info by path.
- * @param fspath
- */
- mountInfoByPath(fspath: string): MountInfo;
- /**
- * Mount a directory to assetdb, and give it a name. If you don't provide a name, it will mount to root.
- * @param path file system path.
- * @param mountPath the mount path (relative path).
- * @param opts options.
- * @param opts.hide if the mount hide in assets browser.
- * @param opts.virtual if this is a virtual mount point.
- * @param opts.icon icon for the mount.
- * @param cb a callback function.
- * @example Editor.assetdb.mount('path/to/mount', 'assets', function (err) {
- // mounted, do something ...
- });
- */
- mount(path: string, mountPath: string, opts: { hide: object, vitural: object, icon: object }, cb?: (err: any) => void): void;
- /**
- * Attach the specified mount path.
- * @param mountPath the mount path (relative path).
- * @param cb a callback function.
- * @example Editor.assetdb.attachMountPath('assets', function (err, results) {
- // mount path attached, do something ...
- // results are the assets created
- });
- */
- attachMountPath(mountPath: string, cb?: (err: any, results: any[]) => void): void;
- /**
- * Unattach the specified mount path.
- * @param mountPath the mount path (relative path).
- * @param cb a callback function.
- * @example Editor.assetdb.unattachMountPath('assets', function (err, results) {
- // mount path unattached, do something ...
- // results are the assets deleted
- });
- */
- unattachMountPath(mountPath: string, cb?: (err: any, results: any[]) => void): void;
- /**
- * Unmount by name.
- * @param mountPath the mount path.
- * @param cb a callback function.
- * @example Editor.assetdb.unmount('assets', function (err) {
- // unmounted, do something ...
- });
- */
- unmount(mountPath: string, cb?: (err: any) => void): void;
- /**
- * Init assetdb, it will scan the mounted directories, and import unimported assets.
- * @param cb a callback function.
- * @example Editor.assetdb.init(function (err, results) {
- // assets that imported during init
- results.forEach(function (result) {
- // result.uuid
- // result.parentUuid
- // result.url
- // result.path
- // result.type
- });
- });
- */
- init(cb?: (err: any, results: any[]) => void): void;
- /**
- * Refresh the assets in url, and return the results.
- * @param url
- * @param cb
- */
- refresh(url: string, cb?: Function): void;
- /**
- * deepQuery
- * @param cb
- * @example Editor.assetdb.deepQuery(function (err, results) {
- results.forEach(function (result) {
- // result.name
- // result.extname
- // result.uuid
- // result.type
- // result.isSubAsset
- // result.children - the array of children result
- });
- });
- */
- deepQuery(cb?: Function): void;
- /**
- * queryAssets
- * @param pattern The url pattern.
- * @param assetTypes The asset type(s).
- * @param cb The callback function.
- */
- queryAssets(pattern: string, assetTypes: string | string[], cb?: (err: Error, results: any[]) => void): void;
- /**
- * queryMetas
- * @param pattern The url pattern.
- * @param type The asset type.
- * @param cb The callback function.
- */
- queryMetas(pattern: string, type: string, cb?: (err: Error, results: any[]) => void): void;
- /**
- * move
- * @param srcUrl The url pattern.
- * @param destUrl The asset type.
- * @param cb The callback function.
- */
- move(srcUrl: string, destUrl: string, cb?: (err: Error, results: any[]) => void): void;
- /**
- * delete
- * @param urls
- * @param cb
- */
- delete(urls: string[], cb?: (err: Error, results: any[]) => void): void;
- /**
- * Create asset at url with data.
- * @param url
- * @param data
- * @param cb
- */
- create(url: string, data: string, cb?: (err: Error, results: any[]) => void): void;
- /**
- * Save data to the exists asset at url.
- * @param url
- * @param data
- * @param cb
- */
- saveExists(url: string, data: string, cb?: (err: Error, meta: any) => void): void;
- /**
- * Import raw files to url
- * @param rawfiles
- * @param url
- * @param cb
- */
- import(rawfiles: string[], url: string, cb?: (err: Error, results: any[]) => void): void;
- /**
- * Overwrite the meta by loading it through uuid.
- * @param uuid
- * @param jsonString
- * @param cb
- */
- saveMeta(uuid: string, jsonString: string, cb?: (err: Error, meta: any) => void): void;
- /**
- * Exchange uuid for two assets.
- * @param urlA
- * @param urlB
- * @param cb
- */
- exchangeUuid(urlA: string, urlB: string, cb?: (err: Error, results: any[]) => void): void;
- /**
- * Clear imports.
- * @param url
- * @param cb
- */
- clearImports(url: string, cb?: (err: Error, results: any[]) => void): void;
- /**
- * Register meta type.
- * @param extname
- * @param folder Whether it's a folder type.
- * @param metaCtor
- */
- register(extname: string, folder: boolean, metaCtor: object): void;
- /**
- * Unregister meta type.
- * @param metaCtor
- */
- unregister(metaCtor: object): void;
- /**
- * Get the relative path from mount path to the asset by fspath.
- * @param fspath
- */
- getRelativePath(fspath: string): string;
- /**
- * Get the backup file path of asset file.
- * @param filePath
- */
- getAssetBackupPath(filePath: string): string;
- }
- }
- interface MetaBase {
- ver: string;
- uuid: string;
- }
- interface MountInfo {
- path: string;
- name: string;
- type: string;
- }
- interface Metas {
- asset: string[];
- folder: string[];
- mount: string[];
- 'custom-asset': string[];
- 'native-asset': string[];
- 'animation-clip': string[];
- 'audio-clip': string[];
- 'bitmap-font': string[];
- }
- interface App {
- readonly home: string;
- readonly name: string;
- readonly path: string;
- readonly version: string;
- }
- class Remote {
- readonly App: App;
- readonly isClosing: boolean;
- readonly lang: string;
- readonly isNode: boolean;
- readonly isElectron: boolean;
- readonly isNative: boolean;
- readonly isPureWeb: boolean;
- readonly isRendererProcess: boolean;
- readonly isMainProcess: boolean;
- readonly isDarwin: boolean;
- readonly isWin32: boolean;
- readonly isRetina: boolean;
- readonly frameworkPath: string;
- readonly dev: boolean;
- readonly logfile: string;
- readonly themePaths: string[];
- readonly theme: string;
- readonly showInternalMount: boolean;
- readonly metas: Metas;
- readonly metaBackupPath: string;
- readonly assetBackupPath: string;
- readonly libraryPath: string;
- readonly importPath: string;
- readonly externalMounts: any;
- readonly mountsWritable: string;
- readonly assetdb: MainProcess.AssetDB;
- readonly assetdbInited: boolean;
- readonly sceneList: string[];
- readonly versions: {
- 'asset-db': string;
- CocosCreator: string;
- cocos2d: string;
- 'editor-framework': string;
- }
- }
- /** Remote 实例 */
- const remote: Remote;
- /** AssetDB 实例 */
- const assetdb: MainProcess.AssetDB;
- }
- interface AssetInfo {
- uuid?: string;
- path?: string;
- url?: string;
- type?: string;
- isSubAsset?: boolean;
- assetType?: string;
- id?: string;
- name?: string;
- subAssetTypes?: string;
- }
- declare module Editor.Project {
- readonly let id: string;
- readonly let name: string;
- /** Absolute path for current open project. */
- readonly let path: string;
- }
- declare module Editor.Builder {
- /**
- *
- * @param eventName The name of the event
- * @param callback The event callback
- */
- function on(eventName: string, callback: (options: BuildOptions, cb: Function) => void): void;
- /**
- *
- * @param eventName The name of the event
- * @param callback The event callback
- */
- function once(eventName: string, callback: (options: BuildOptions, cb: Function) => void): void;
- /**
- *
- * @param eventName The name of the event
- * @param callback The event callback
- */
- function removeListener(eventName: string, callback: Function): void;
- }
- declare module Editor.Scene {
- /**
- *
- * @param packageName
- * @param method
- * @param cb
- */
- function callSceneScript(packageName: string, method: string, cb: (err: Error, msg: any) => void): void;
- }
- declare module Editor.Panel {
- /**
- * Open a panel via panelID.
- * @param panelID The panel ID
- * @param argv
- */
- function open(panelID: string, argv?: object): void;
- /**
- * Close a panel via panelID.
- * @param panelID The panel ID
- */
- function close(panelID: string): void;
- /**
- * Find panel frame via panelID.
- * @param panelID The panel ID
- */
- function find(panelID: string): void;
- /**
- * Extends a panel.
- * @param proto
- */
- function extend(proto: object): void;
- }
- declare module Editor.Selection {
- /**
- * Select item with its id.
- * @param type
- * @param id
- * @param unselectOthers
- * @param confirm
- */
- function select(type: string, id: string, unselectOthers?: boolean, confirm?: boolean): void;
- /**
- * Unselect item with its id.
- * @param type
- * @param id
- * @param confirm
- */
- function unselect(type: string, id: string, confirm?: boolean): void;
- /**
- * Hover item with its id. If id is null, it means hover out.
- * @param type
- * @param id
- */
- function hover(type: string, id: string): string;
- /**
- *
- * @param type
- */
- function clear(type: string): void;
- /**
- *
- * @param type
- */
- function curActivate(type: string): string[];
- /**
- *
- * @param type
- */
- function curGlobalActivate(type: string): string[];
- /**
- *
- * @param type
- */
- function curSelection(type: string): string[];
- /**
- *
- * @param items
- * @param mode 'top-level', 'deep' and 'name'
- * @param func
- */
- function filter(items: string[], mode: string, func: Function): string[];
- }
- declare module Editor.Ipc {
- /**
- * Send message with ...args to main process asynchronously. It is possible to add a callback as the last or the 2nd last argument to receive replies from the IPC receiver.
- * @param message Ipc message.
- * @param args Whatever arguments the message needs.
- * @param callback You can specify a callback function to receive IPC reply at the last or the 2nd last argument.
- * @param timeout You can specify a timeout for the callback at the last argument. If no timeout specified, it will be 5000ms.
- */
- function sendToMain(message: string, ...args?: any, callback?: Function, timeout?: number): void;
- /**
- * Send message with ...args to panel defined in renderer process asynchronously. It is possible to add a callback as the last or the 2nd last argument to receive replies from the IPC receiver.
- * @param panelID Panel ID.
- * @param message Ipc message.
- * @param args Whatever arguments the message needs.
- * @param callback You can specify a callback function to receive IPC reply at the last or the 2nd last argument.
- * @param timeout You can specify a timeout for the callback at the last argument. If no timeout specified, it will be 5000ms.
- */
- function sendToPanel(panelID: string, message: string, ...args?: any, callback?: Function, timeout?: number): void;
- /**
- * Send message with ...args to all opened window and to main process asynchronously.
- * @param message Ipc message.
- * @param args Whatever arguments the message needs.
- * @param option You can indicate the last argument as an IPC option by Editor.Ipc.option({...}).
- */
- function sendToAll(message: string, ...args?: any, option?: object): void;
- /**
- * Send message with ...args to main process synchronized and return a result which is responded from main process.
- * @param message Ipc message.
- * @param args Whatever arguments the message needs.
- */
- function sendToMainSync(message: string, ...args?: any): void;
- /**
- * Send message with ...args to main process by package name and the short name of the message.
- * @param pkgName Package name.
- * @param message Ipc message.
- * @param args Whatever arguments the message needs.
- */
- function sendToPackage(pkgName: string, message: string, ...args?: any): void;
- }
- declare module Editor.UI {
- module Setting {
- /**
- * Control the default step for float point input element. Default is 0.1.
- * @param value
- */
- function stepFloat(value: number): void;
- /**
- * Control the default step for integer input element. Default is 1.
- * @param value
- */
- function stepInt(value: number): void;
- /**
- * Control the step when shift key press down. Default is 10.
- * @param value
- */
- function shiftStep(value: number): void;
- }
- module DragDrop {
- readonly let dragging: boolean;
- function start(e: any, t: any): void;
- function end(): void;
- function updateDropEffect(e: any, t: any);
- function type(e: any);
- function filterFiles(e: any);
- function items(dataTransfer: DataTransfer): AssetInfo[];
- function getDragIcon(e: any);
- function options(e: any);
- function getLength(e: any): number;
- }
- }
- declare module Editor.GizmosUtils {
- function addMoveHandles(e, n, t);
- function getCenter(e);
- function getCenterWorldPos(n);
- function getCenterWorldPos3D(e);
- function getRecursiveNodes(e, t);
- function getRecursiveWorldBounds3D(e);
- function getWorldBounds3D(n);
- function snapPixel(e);
- function snapPixelWihVec2(e);
- }
- declare module Editor.Utils {
- /**
- * Uuid 工具
- */
- module UuidUtils {
- /**
- * 压缩后的 uuid 可以减小保存时的尺寸,但不能做为文件名(因为无法区分大小写并且包含非法字符)。
- * 默认将 uuid 的后面 27 位压缩成 18 位,前 5 位保留下来,方便调试。
- * 如果启用 min 则将 uuid 的后面 30 位压缩成 20 位,前 2 位保留不变。
- * @param uuid
- * @param min
- */
- function compressUuid(uuid: string, min?: boolean): string;
- function compressHex(hexString: string, reservedHeadLength?: number): string;
- function decompressUuid(str: string): string;
- function isUuid(str: string): boolean;
- function uuid(): string;
- }
- }
- declare interface BuildOptions {
- actualPlatform: string;
- android: { packageName: string };
- 'android-instant': {
- REMOTE_SERVER_ROOT: string;
- host: string;
- packageName: string;
- pathPattern: string;
- recordPath: string;
- scheme: string;
- skipRecord: boolean;
- }
- apiLevel: string;
- appABIs: string[];
- appBundle: boolean;
- buildPath: string;
- buildScriptsOnly: boolean;
- debug: string;
- dest: string;
- embedWebDebugger: boolean;
- encryptJs: boolean;
- excludeScenes: string[];
- excludedModules: string[];
- 'fb-instant-games': object;
- inlineSpriteFrames: boolean;
- inlineSpriteFrames_native: boolean;
- ios: { packageName: string };
- mac: { packageName: string };
- md5Cache: boolean;
- mergeStartScene: boolean;
- optimizeHotUpdate: boolean;
- orientation: {
- landscapeLeft: boolean;
- landscapeRight: boolean;
- portrait: boolean;
- upsideDown: boolean;
- };
- packageName: string;
- platform: string;
- previewHeight: number;
- previewWidth: number;
- scenes: string[];
- sourceMaps: boolean;
- startScene: string;
- template: string;
- title: string;
- useDebugKeystore: boolean;
- vsVersion: string;
- webOrientation: boolean;
- win32: object;
- xxteaKey: string;
- zipCompressJs: string;
- project: string;
- projectName: string;
- debugBuildWorker: boolean;
- bundles: bundle[];
- }
- interface bundle {
- /** bundle 的根目录 */
- root: string;
- /** bundle 的输出目录 */
- dest: string;
- /** 脚本的输出目录 */
- scriptDest: string;
- /** bundle 的名称 */
- name: string;
- /** bundle 的优先级 */
- priority: number;
- /** bundle 中包含的场景 */
- scenes: string[];
- /** bundle 的压缩类型 */
- compressionType: 'subpackage' | 'normal' | 'none' | 'merge_all_json' | 'zip';
- /** bundle 所构建出来的所有资源 */
- buildResults: BuildResults;
- /** bundle 的版本信息,由 config 生成 */
- version: string;
- /** bundle 的 config.json 文件 */
- config: any;
- /** bundle 是否是远程包 */
- isRemote: boolean;
- }
|