/*! * Copyright (c) Microsoft Corporation and contributors. All rights reserved. * Licensed under the MIT License. */ import type { IRequest } from "@fluidframework/core-interfaces"; /** * @legacy @beta */ export interface IResolvedUrl { type: "fluid"; /** * The id of the container this resolved url is for. */ id: string; url: string; tokens: { [name: string]: string; }; endpoints: { [name: string]: string; }; } /** * Container package info handed off to resolver. * @legacy @beta */ export interface IContainerPackageInfo { /** * Container package name. */ name: string; } /** * @legacy @beta */ export interface IUrlResolver { resolve(request: IRequest): Promise; /** * Creates a url for the created container with any data store path given in the relative url. * @param resolvedUrl - resolved url for the container. * @param relativeUrl - relative url containing data store path; '/' represents root path. * @param packageInfoSource - optional, represents container package information to be included in url. * @returns absolute url combining container url with dta store path and optional additional information. */ getAbsoluteUrl(resolvedUrl: IResolvedUrl, relativeUrl: string, packageInfoSource?: IContainerPackageInfo): Promise; } /** * Information that can be returned by a lightweight, separately exported driver function. Used to preanalyze a URL * for driver compatibility and preload information. * @legacy @beta */ export interface DriverPreCheckInfo { /** * A code details hint that can potentially be used to prefetch container code prior to having a snapshot. */ codeDetailsHint?: string; /** * Domains that will be connected to on the critical boot path. Hosts can choose to preconnect to these for * improved performance. */ criticalBootDomains?: string[]; } /** * Additional key in the loader request header * @legacy @beta */ export declare enum DriverHeader { summarizingClient = "fluid-client-summarizer", createNew = "createNew" } /** * @internal */ export interface IDriverHeader { [DriverHeader.summarizingClient]: boolean; [DriverHeader.createNew]: any; } declare module "@fluidframework/core-interfaces" { /** * Interface to represent headers to include in the container or data store load request. * For example, caller can use this to pass on various loader options in the container * load request. */ interface IRequestHeader extends Partial { } } //# sourceMappingURL=urlResolver.d.ts.map