@soleil-se/app-util
Version:
Utility functions for WebApps, RESTApps and Widgets in Sitevision.
53 lines (52 loc) • 2.21 kB
TypeScript
/**
* Require a module natively, bypassing Webpack bundling.
* This function behaves like CommonJS require() and is used to import
* system packages in the Rhino runtime environment where Webpack bundling interferes
* with native module resolution.
*
* @param {string} module - The module identifier
* @returns {any} The exported module
* @example
* // Import a Sitevision API package
* const PortletContextUtil = nativeRequire('PortletContextUtil');
*/
export function nativeRequire(module: string): any;
/**
* @typedef {import('@sitevision/api/types/javax/jcr/Node').Node} Node
* @typedef {import('@sitevision/api/types/javax/jcr/NodeIterator').NodeIterator} NodeIterator
* @typedef {import('@sitevision/api/types/java/util/Iterator').Iterator} Iterator
* @typedef {import('@sitevision/api/types/java/util/List').List} List
* @typedef {import('@sitevision/api/types/java/util/Set').Set} Set
*/
/**
* Converts an Iterator to an array
* @template T
* @param {Iterator} iterator - The Iterator to convert
* @returns {T[]} Array containing all items from the iterator
*/
export function iteratorToArray<T>(iterator: Iterator): T[];
/**
* Converts a NodeIterator to an array of Nodes
* @param {NodeIterator} nodeIterator - The NodeIterator to convert
* @returns {Node[]} Array containing all nodes from the iterator
*/
export function nodeIteratorToArray(nodeIterator: NodeIterator): Node[];
/**
* Converts a List to an array
* @template T
* @param {List} list - The List to convert
* @returns {T[]} Array containing all items from the list
*/
export function listToArray<T>(list: List): T[];
/**
* Converts a Set to an array
* @template T
* @param {Set} set - The Set to convert
* @returns {T[]} Array containing all items from the set
*/
export function setToArray<T>(set: Set): T[];
export type Node = import('@sitevision/api/types/javax/jcr/Node').Node;
export type NodeIterator = import('@sitevision/api/types/javax/jcr/NodeIterator').NodeIterator;
export type Iterator = import('@sitevision/api/types/java/util/Iterator').Iterator;
export type List = import('@sitevision/api/types/java/util/List').List;
export type Set = import('@sitevision/api/types/java/util/Set').Set;