@needle-tools/engine
Version:
Needle Engine is a web-based runtime for 3D apps. It runs on your machine for development with great integrations into editors like Unity or Blender - and can be deployed onto any device! It is flexible, extensible and networking and XR are built-in.
96 lines (95 loc) • 3.7 kB
TypeScript
/**
* @param {"build" | "serve"} command
* @param {unknown} _config
* @param {import('../types').userSettings} userSettings
* @returns {import('vite').Plugin | null}
*/
export function needleLocalFilesSceneAnalysis(command: "build" | "serve", _config: unknown, userSettings: import("../types").userSettings): import("vite").Plugin | null;
/**
* @param {string} projectDir
* @returns {AutoPolicy | null}
*/
export function getLocalFilesAutoPolicy(projectDir: string): AutoPolicy | null;
/**
* @param {import('../types').userSettings | undefined | null} userSettings
* @returns {boolean}
*/
export function makeFilesLocalIsEnabled(userSettings: import("../types").userSettings | undefined | null): boolean;
/**
* @param {import('../types').userSettings | undefined | null} userSettings
* @returns {LocalizationOptions}
*/
export function resolveOptions(userSettings: import("../types").userSettings | undefined | null): LocalizationOptions;
/**
* @param {string | string[] | undefined} features
* @returns {boolean}
*/
export function hasAutoFeatureSelection(features: string | string[] | undefined): boolean;
/**
* @param {LocalizationOptions} options
* @param {string} projectDir
* @returns {AutoPolicy | null}
*/
export function buildAutoPolicy(options: LocalizationOptions, projectDir: string): AutoPolicy | null;
/**
* @param {string} projectDir
* @param {LocalizationOptions} options
* @param {SceneAnalysisReport | null} [cachedAnalysis]
* @returns {AutoPolicy}
*/
export function detectAutoPolicy(projectDir: string, options: LocalizationOptions, cachedAnalysis?: SceneAnalysisReport | null): AutoPolicy;
/**
* @param {string} projectDir
* @returns {SceneAnalysisReport}
*/
export function analyzeProjectGlbs(projectDir: string): SceneAnalysisReport;
/**
* @param {string} projectDir
* @returns {string[]}
*/
export function collectAssetGlbs(projectDir: string): string[];
/**
* @param {string} filePath
* @returns {Record<string, unknown>}
*/
export function readGlbJsonChunk(filePath: string): Record<string, unknown>;
/**
* @param {unknown} json
* @returns {string[]}
*/
export function collectNeedleComponentExtensionBlobs(json: unknown): string[];
/**
* @param {string} indexHtml
* @returns {Set<string>}
*/
export function collectIndexHtmlSkyboxUrls(indexHtml: string): Set<string>;
/**
* @param {string | string[] | undefined | null} skyboxOption
* @param {Set<string>} indexSkyboxUrls
* @returns {Set<string> | null}
*/
export function resolveSkyboxSelectionUrls(skyboxOption: string | string[] | undefined | null, indexSkyboxUrls: Set<string>): Set<string> | null;
/**
* @param {string | null | undefined} value
* @returns {string | null}
*/
export function resolveSkyboxValueToUrl(value: string | null | undefined): string | null;
/**
* @param {string | undefined} mode
* @returns {string[]}
*/
export function getWebXRProfilesForMode(mode: string | undefined): string[];
/**
* @param {string} url
* @param {UrlHandler} handler
* @param {LocalizationContext} context
* @returns {boolean}
*/
export function shouldHandleUrlInAutoMode(url: string, handler: UrlHandler, context: LocalizationContext): boolean;
export const SKYBOX_MAGIC_KEYWORDS: string[];
export type LocalizationOptions = import("./local-files-types.js").LocalizationOptions;
export type AutoPolicy = import("./local-files-types.js").AutoPolicy;
export type SceneAnalysisReport = import("./local-files-types.js").SceneAnalysisReport;
export type SceneFile = import("./local-files-types.js").SceneFile;
export type UrlHandler = import("./local-files-types.js").UrlHandler;
export type LocalizationContext = import("./local-files-types.js").LocalizationContext;