import type { IInformationComponent, IServerInfo } from "@twin.org/api-models"; import type { IInformationServiceConstructorOptions } from "./models/IInformationServiceConstructorOptions.js"; /** * The information service for the server. */ export declare class InformationService implements IInformationComponent { /** * Runtime name for the class. */ static readonly CLASS_NAME: string; /** * Create a new instance of InformationService. * @param options The options to create the service. */ constructor(options: IInformationServiceConstructorOptions); /** * Returns the class name of the component. * @returns The class name of the component. */ className(): string; /** * The service needs to be started when the application is initialized. * @returns A promise that resolves when the OpenAPI spec and favicon have been loaded from disk. */ start(): Promise; /** * Get the root information. * @returns The root information. */ root(): Promise; /** * Get the server information. * @returns The service information. */ info(): Promise; /** * Get the favicon. * @returns The favicon. */ favicon(): Promise; /** * Get the OpenAPI spec. * @returns The OpenAPI spec. */ spec(): Promise; /** * Is the server live. * @returns The liveness status of the server. */ livez(): Promise<{ status: "alive" | "dead"; }>; /** * Is the server ready. * @returns The readyz status of the server. */ readyz(): Promise<{ status: "ready" | "not ready"; }>; }