summaryrefslogtreecommitdiff
path: root/includes/external/matrix/node_modules/matrix-js-sdk/lib/autodiscovery.d.ts
diff options
context:
space:
mode:
authorRaindropsSys <contact@minteck.org>2023-04-24 14:03:36 +0200
committerRaindropsSys <contact@minteck.org>2023-04-24 14:03:36 +0200
commit633c92eae865e957121e08de634aeee11a8b3992 (patch)
tree09d881bee1dae0b6eee49db1dfaf0f500240606c /includes/external/matrix/node_modules/matrix-js-sdk/lib/autodiscovery.d.ts
parentc4657e4509733699c0f26a3c900bab47e915d5a0 (diff)
downloadpluralconnect-633c92eae865e957121e08de634aeee11a8b3992.tar.gz
pluralconnect-633c92eae865e957121e08de634aeee11a8b3992.tar.bz2
pluralconnect-633c92eae865e957121e08de634aeee11a8b3992.zip
Updated 18 files, added 1692 files and deleted includes/system/compare.inc (automated)
Diffstat (limited to 'includes/external/matrix/node_modules/matrix-js-sdk/lib/autodiscovery.d.ts')
-rw-r--r--includes/external/matrix/node_modules/matrix-js-sdk/lib/autodiscovery.d.ts132
1 files changed, 132 insertions, 0 deletions
diff --git a/includes/external/matrix/node_modules/matrix-js-sdk/lib/autodiscovery.d.ts b/includes/external/matrix/node_modules/matrix-js-sdk/lib/autodiscovery.d.ts
new file mode 100644
index 0000000..295bea1
--- /dev/null
+++ b/includes/external/matrix/node_modules/matrix-js-sdk/lib/autodiscovery.d.ts
@@ -0,0 +1,132 @@
+import { IClientWellKnown, IWellKnownConfig } from "./client";
+export declare enum AutoDiscoveryAction {
+ SUCCESS = "SUCCESS",
+ IGNORE = "IGNORE",
+ PROMPT = "PROMPT",
+ FAIL_PROMPT = "FAIL_PROMPT",
+ FAIL_ERROR = "FAIL_ERROR"
+}
+declare enum AutoDiscoveryError {
+ Invalid = "Invalid homeserver discovery response",
+ GenericFailure = "Failed to get autodiscovery configuration from server",
+ InvalidHsBaseUrl = "Invalid base_url for m.homeserver",
+ InvalidHomeserver = "Homeserver URL does not appear to be a valid Matrix homeserver",
+ InvalidIsBaseUrl = "Invalid base_url for m.identity_server",
+ InvalidIdentityServer = "Identity server URL does not appear to be a valid identity server",
+ InvalidIs = "Invalid identity server discovery response",
+ MissingWellknown = "No .well-known JSON file found",
+ InvalidJson = "Invalid JSON"
+}
+interface WellKnownConfig extends Omit<IWellKnownConfig, "error"> {
+ state: AutoDiscoveryAction;
+ error?: IWellKnownConfig["error"] | null;
+}
+export interface ClientConfig extends Omit<IClientWellKnown, "m.homeserver" | "m.identity_server"> {
+ "m.homeserver": WellKnownConfig;
+ "m.identity_server": WellKnownConfig;
+}
+/**
+ * Utilities for automatically discovery resources, such as homeservers
+ * for users to log in to.
+ */
+export declare class AutoDiscovery {
+ static readonly ERROR_INVALID = AutoDiscoveryError.Invalid;
+ static readonly ERROR_GENERIC_FAILURE = AutoDiscoveryError.GenericFailure;
+ static readonly ERROR_INVALID_HS_BASE_URL = AutoDiscoveryError.InvalidHsBaseUrl;
+ static readonly ERROR_INVALID_HOMESERVER = AutoDiscoveryError.InvalidHomeserver;
+ static readonly ERROR_INVALID_IS_BASE_URL = AutoDiscoveryError.InvalidIsBaseUrl;
+ static readonly ERROR_INVALID_IDENTITY_SERVER = AutoDiscoveryError.InvalidIdentityServer;
+ static readonly ERROR_INVALID_IS = AutoDiscoveryError.InvalidIs;
+ static readonly ERROR_MISSING_WELLKNOWN = AutoDiscoveryError.MissingWellknown;
+ static readonly ERROR_INVALID_JSON = AutoDiscoveryError.InvalidJson;
+ static readonly ALL_ERRORS: string[];
+ /**
+ * The auto discovery failed. The client is expected to communicate
+ * the error to the user and refuse logging in.
+ */
+ static readonly FAIL_ERROR = AutoDiscoveryAction.FAIL_ERROR;
+ /**
+ * The auto discovery failed, however the client may still recover
+ * from the problem. The client is recommended to that the same
+ * action it would for PROMPT while also warning the user about
+ * what went wrong. The client may also treat this the same as
+ * a FAIL_ERROR state.
+ */
+ static readonly FAIL_PROMPT = AutoDiscoveryAction.FAIL_PROMPT;
+ /**
+ * The auto discovery didn't fail but did not find anything of
+ * interest. The client is expected to prompt the user for more
+ * information, or fail if it prefers.
+ */
+ static readonly PROMPT = AutoDiscoveryAction.PROMPT;
+ /**
+ * The auto discovery was successful.
+ */
+ static readonly SUCCESS = AutoDiscoveryAction.SUCCESS;
+ /**
+ * Validates and verifies client configuration information for purposes
+ * of logging in. Such information includes the homeserver URL
+ * and identity server URL the client would want. Additional details
+ * may also be included, and will be transparently brought into the
+ * response object unaltered.
+ * @param wellknown - The configuration object itself, as returned
+ * by the .well-known auto-discovery endpoint.
+ * @returns Promise which resolves to the verified
+ * configuration, which may include error states. Rejects on unexpected
+ * failure, not when verification fails.
+ */
+ static fromDiscoveryConfig(wellknown: IClientWellKnown): Promise<ClientConfig>;
+ /**
+ * Attempts to automatically discover client configuration information
+ * prior to logging in. Such information includes the homeserver URL
+ * and identity server URL the client would want. Additional details
+ * may also be discovered, and will be transparently included in the
+ * response object unaltered.
+ * @param domain - The homeserver domain to perform discovery
+ * on. For example, "matrix.org".
+ * @returns Promise which resolves to the discovered
+ * configuration, which may include error states. Rejects on unexpected
+ * failure, not when discovery fails.
+ */
+ static findClientConfig(domain: string): Promise<ClientConfig>;
+ /**
+ * Gets the raw discovery client configuration for the given domain name.
+ * Should only be used if there's no validation to be done on the resulting
+ * object, otherwise use findClientConfig().
+ * @param domain - The domain to get the client config for.
+ * @returns Promise which resolves to the domain's client config. Can
+ * be an empty object.
+ */
+ static getRawClientConfig(domain?: string): Promise<IClientWellKnown>;
+ /**
+ * Sanitizes a given URL to ensure it is either an HTTP or HTTP URL and
+ * is suitable for the requirements laid out by .well-known auto discovery.
+ * If valid, the URL will also be stripped of any trailing slashes.
+ * @param url - The potentially invalid URL to sanitize.
+ * @returns The sanitized URL or a falsey value if the URL is invalid.
+ * @internal
+ */
+ private static sanitizeWellKnownUrl;
+ private static fetch;
+ private static fetchFn?;
+ static setFetchFn(fetchFn: typeof global.fetch): void;
+ /**
+ * Fetches a JSON object from a given URL, as expected by all .well-known
+ * related lookups. If the server gives a 404 then the `action` will be
+ * IGNORE. If the server returns something that isn't JSON, the `action`
+ * will be FAIL_PROMPT. For any other failure the `action` will be FAIL_PROMPT.
+ *
+ * The returned object will be a result of the call in object form with
+ * the following properties:
+ * raw: The JSON object returned by the server.
+ * action: One of SUCCESS, IGNORE, or FAIL_PROMPT.
+ * reason: Relatively human-readable description of what went wrong.
+ * error: The actual Error, if one exists.
+ * @param url - The URL to fetch a JSON object from.
+ * @returns Promise which resolves to the returned state.
+ * @internal
+ */
+ private static fetchWellKnownObject;
+}
+export {};
+//# sourceMappingURL=autodiscovery.d.ts.map \ No newline at end of file