import type { JCRNodeWrapper } from "org.jahia.services.content"; import type { RenderContext, Resource } from "org.jahia.services.render"; /** * Generate a Jahia url for the provided node. * * @returns The final URL */ export declare function buildNodeUrl( /** The node to build the URL for */ node: JCRNodeWrapper, config?: { /** The query string parameters to append to the URL */ parameters?: Record; /** * The mode to use to build the URL. Defines the mode or override the one provided by the * renderContext. */ mode?: "edit" | "preview" | "live"; /** * The language to use to build the URL. Defines the languages or overrides the one provided * by the current resource */ language?: string; /** * The extension to use to build the URL. Defines the extension or overrides the one * provided by the current resource */ extension?: string; } | { /** The query string parameters to append to the URL */ parameters?: Record; /** Additional arguments used for building the URL, through `node.getUrl` overloads. */ args?: Record; }, context?: { /** Provided in react context, but you need to provide one otherwise. * */ renderContext?: RenderContext; /** Provided in react context, you need to provide one otherwise. * */ currentResource?: Resource; }): string; /** * Build a URL for a file in a module. Note that to be accessible, the folder that contains the file * must be part of the jahia.static-resources in package.json. * * The URL must not be absolute (start with a /). Url with a protocol (e.g. data: URI) will be * returned as is. */ export declare function buildModuleFileUrl( /** Relative path of the file from the module's root (examples: css/my.css, images/myImage.webp) */ filePath: string, config?: { /** Defines a custom module name to access its files */ moduleName?: string; /** Querystring parameters to append to the URL */ parameters?: Record; }, context?: { /** Provided in react context, you need to provide one (or the module name) otherwise. */ renderContext?: RenderContext; }): string; /** Build an url for any endpoint on the server (/cms/*, /graphql, ect). */ export declare function buildEndpointUrl( /** Endpoint to call */ endpoint: string, config?: { /** Querystring parameters to append to the URL */ parameters?: Record; }, context?: { /** Provided in react context, you need to provide one otherwise. */ renderContext?: RenderContext; }): string;