import { BaseUri, ParseBaseUriError, ParseVersionedUriError, Result, VersionedUri } from "../../wasm/type-system";
/**
 * Checks if a given URL string is a valid base URL.
 *
 * @param {BaseUri} uri - The URL string.
 * @returns {(Result<BaseUri, ParseBaseUriError>)} - an Ok with an inner of the string as a
 * BaseUri if valid, or an Err with an inner ParseBaseUriError
 */
export declare const validateBaseUri: (uri: string) => Result<BaseUri, ParseBaseUriError>;
/**
 * Checks if a given URL string is a Block Protocol compliant Versioned URI.
 *
 * @param {string} uri - The URL string.
 * @returns {(Result<VersionedUri, ParseVersionedUriError>)} - an Ok with an inner of the string
 as
 * a VersionedUri if valid, or an Err with an inner ParseVersionedUriError
 */
export declare const validateVersionedUri: (uri: string) => Result<VersionedUri, ParseVersionedUriError>;
/**
 * Extracts the base URI from a Versioned URI.
 *
 * @param {VersionedUri} uri - The versioned URI.
 * @throws if the versioned URI is invalid.
 */
export declare const extractBaseUri: (uri: VersionedUri) => BaseUri;
/**
 * Extracts the version from a Versioned URI.
 *
 * @param {VersionedUri} uri - The versioned URI.
 * @throws if the versioned URI is invalid.
 */
export declare const extractVersion: (uri: VersionedUri) => number;
