import Servient from "./servient"; import { Resolver } from "@thingweb/thing-model"; import { Thing, ThingInteraction } from "./thing-description"; import * as TDT from "wot-thing-description-types"; import { ValidateFunction } from "ajv"; import { DataSchemaValue, ExposedThingInit } from "wot-typescript-definitions"; import { SomeJSONSchema } from "ajv/dist/types/json-schema"; import { PropertyElement, DataSchema } from "wot-thing-description-types"; export default class Helpers implements Resolver { static tsSchemaValidator: ValidateFunction; private srv; constructor(srv: Servient); private static staticAddress?; static extractScheme(uri: string): string; static setStaticAddress(address: string): void; static getAddresses(): Array; static toUriLiteral(address?: string): string; static generateUniqueName(name: string): string; static toStringArray(input: string[] | string | undefined): string[]; static structuredClone(value: T): T; fetch(uri: string): Promise; static extend(first: T, second: U): T & U; static parseInteractionOutput(response: WoT.InteractionOutput): Promise; static createExposeThingInitSchema(tdSchema: unknown): SomeJSONSchema; static validateExposedThingInit(data: ExposedThingInit): { valid: boolean; errors?: string; }; static parseInteractionOptions(thing: TDT.ThingDescription, ti: ThingInteraction, options?: WoT.InteractionOptions): WoT.InteractionOptions; static validateInteractionOptions(thing: Thing, ti: ThingInteraction, options?: WoT.InteractionOptions): boolean; static parseUrlParameters(url: string | undefined, globalUriVariables?: { [key: string]: DataSchema; }, uriVariables?: { [k: string]: DataSchema; }): Record; static updateInteractionNameWithUriVariablePattern(interactionName: string, affordanceUriVariables?: PropertyElement["uriVariables"], thingUriVariables?: PropertyElement["uriVariables"]): string; }