1 Star 0 Fork 85

nlpleaf/lcc-render

forked from Nomat/lcc-render 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
editor.d.ts 33.52 KB
一键复制 编辑 原始数据 按行查看 历史
Nomat 提交于 2020-10-25 14:47 . 规范插件结构
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128
/**
* Cocos Creator 编辑器命名空间
* @author 陈皮皮(ifaswind)
* @version 20200804
* @see https://gitee.com/ifaswind/eazax-ccc/blob/master/declarations/editor.d.ts
*/
declare namespace 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
*/
export 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
*/
export 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
*/
export 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
*/
export 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
*/
export 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
*/
export 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
*/
export function url(url: string, encode?: string): string;
}
declare namespace Editor {
export const versions: { CocosCreator: string, 'editor-framework': string, 'asset-db': string, cocos2d: string };
}
declare namespace Editor {
export function T(key: string): string;
}
declare namespace Editor {
namespace 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;
}
}
namespace 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 AssetInfo {
// uuid: string;
// path: string;
// url: string;
// type: string;
// isSubAsset: boolean;
// }
// interface AssetInfo {
// assetType: string;
// id: string;
// isSubAsset?: boolean;
// name: string;
// subAssetTypes: 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[];
}
class Remote {
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[];
}
/**
* Remote 实例
*/
export const remote: Remote;
/**
* AssetDB 实例
*/
export 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.App {
export const version: string;
}
declare module Editor.Project {
/**
* Absolute path for current open project.
*/
export const path: string;
export const name: string;
export const id: string;
}
declare module Editor.Builder {
/**
*
* @param eventName The name of the event
* @param callback The event callback
*/
export function on(eventName: string, callback: (options: BuildOptions, cb: Function) => void): void;
/**
*
* @param eventName The name of the event
* @param callback The event callback
*/
export function once(eventName: string, callback: (options: BuildOptions, cb: Function) => void): void;
/**
*
* @param eventName The name of the event
* @param callback The event callback
*/
export function removeListener(eventName: string, callback: Function): void;
}
declare module Editor.Scene {
/**
*
* @param packageName
* @param method
* @param cb
*/
export 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
*/
export function open(panelID: string, argv?: object): void;
/**
* Close a panel via panelID.
* @param panelID The panel ID
*/
export function close(panelID: string): void;
/**
* Find panel frame via panelID.
* @param panelID The panel ID
*/
export function find(panelID: string): void;
/**
* Extends a panel.
* @param proto
*/
export function extend(proto: object): void;
}
declare module Editor.Selection {
/**
* Select item with its id.
* @param type
* @param id
* @param unselectOthers
* @param confirm
*/
export function select(type: string, id: string, unselectOthers?: boolean, confirm?: boolean): void;
/**
* Unselect item with its id.
* @param type
* @param id
* @param confirm
*/
export 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
*/
export function hover(type: string, id: string): string;
/**
*
* @param type
*/
export function clear(type: string): void;
/**
*
* @param type
*/
export function curActivate(type: string): string[];
/**
*
* @param type
*/
export function curGlobalActivate(type: string): string[];
/**
*
* @param type
*/
export function curSelection(type: string): string[];
/**
*
* @param items
* @param mode 'top-level', 'deep' and 'name'
* @param func
*/
export 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.
*/
export 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.
*/
export 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({...}).
*/
export 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.
*/
export 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.
*/
export function sendToPackage(pkgName: string, message: string, ...args?: any): void;
}
declare module Editor.UI {
export module Setting {
/**
* Control the default step for float point input element. Default is 0.1.
* @param value
*/
export function stepFloat(value: number): void;
/**
* Control the default step for integer input element. Default is 1.
* @param value
*/
export function stepInt(value: number): void;
/**
* Control the step when shift key press down. Default is 10.
* @param value
*/
export function shiftStep(value: number): void;
}
export module DragDrop {
export function start(e: any, t: any): void;
export function end(): void;
export function updateDropEffect(e: any, t: any);
export function type(e: any);
export function filterFiles(e: any);
export function items(dataTransfer: DataTransfer): AssetInfo[];
export function getDragIcon(e: any);
export function options(e: any);
export function getLength(e: any): number;
export const dragging: boolean;
}
}
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;
/**
* 从 v2.4 开始,options 中不再提供 buildResults,而是提供了一个 bundles 数组。
*/
buildResults: BuildResults;
bundles: bundle[];
}
declare class BuildResults {
/**
* Returns true if the asset contains in the build.
* 指定的 uuid 资源是否包含在构建资源中
* @param uuid 需要检测的资源 uuid
* @param assertContains 不包含时是否打印报错信息
*/
containsAsset(uuid: string, assertContains: boolean): boolean;
/**
* Returns the uuids of all assets included in the build.
* 返回构建资源中包含的所有资源的 uuid
*/
getAssetUuids(): string[];
/**
* Return the uuids of assets which are dependencies of the input, also include all indirect dependencies.
* The list returned will not include the input uuid itself.
* 获取指定 uuid 资源中的所有依赖资源,返回的列表中不包含自身
* @param uuid 指定的 uuid 资源
*/
getDependencies(uuid: string): string[];
/**
* Get type of asset defined in the engine.
* You can get the constructor of an asset by using `cc.js.getClassByName(type)`.
* 获取指定 uuid 的资源在引擎中定义的资源类型
* 同时可以使用 cc.js.getClassByName(type) 进行获取资源的构造函数
* @param uuid 指定的 uuid 资源
*/
getAssetType(uuid: string): string;
/**
* Get the path of the specified native asset such as texture. Returns empty string if not found.
* 获取指定 uuid 资源(例如纹理)的存放路径(如果找不到,则返回空字符串)
* @param uuid 指定的 uuid 资源
*/
getNativeAssetPath(uuid: string): string;
/**
* 获取指定 uuid 资源(例如纹理)的所有存放路径(如果找不到,则返回空数组)
* 例如:需要获取纹理多种压缩格式的存放资源路径时,即可使用该函数
* @param uuid - 指定的 uuid 资源
*/
getNativeAssetPaths(uuid: string): string[];
}
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;
}
declare module Editor.Utils {
module UuidUtils {
/**
* 压缩后的 uuid 可以减小保存时的尺寸,但不能做为文件名(因为无法区分大小写并且包含非法字符)。
* 默认将 uuid 的后面 27 位压缩成 18 位,前 5 位保留下来,方便调试。
* 如果启用 min 则将 uuid 的后面 30 位压缩成 20 位,前 2 位保留不变。
* @param uuid
* @param min
*/
export function compressUuid(uuid: string, min?: boolean): string;
export function compressHex(hexString: string, reservedHeadLength?: number): string;
export function decompressUuid(str: string): string;
export function isUuid(str: string): boolean;
export function uuid(): string;
}
}
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
TypeScript
1
https://gitee.com/nlpleaf/lcc-render.git
git@gitee.com:nlpleaf/lcc-render.git
nlpleaf
lcc-render
lcc-render
master

搜索帮助