@microsoft/windows-admin-center-sdk
Version:
Microsoft - Windows Admin Center Shell
82 lines (81 loc) • 3.03 kB
TypeScript
import { UriBuilder } from './uri-builder';
/** Represents the defined API versions. */
export declare enum ApiVersion {
/** Gets the API version for 2018-04-01. */
v2018_04_01 = "2018-04-01",
/** Gets the API version for 2019-02-01. */
v2019_02_01 = "2019-02-01",
/** Gets the intial API version (2018-04-01). */
Initial = "2018-04-01",
/** Gets the latest API version (2019-02-01). */
Latest = "2019-02-01"
}
/** Represents an object that can build URL to the gateway. */
export declare class GatewayUrlBuilder {
private builder;
/**
* Initializes a new instance of the GatewayUrlBuilder class.
* @param uri The string or URL to initialize the builder from.
*/
constructor(uri: string | URL);
/**
* Indicates the builder should use a specified API version.
* @param apiVersion The API version to use.
* @returns The original builder.
*/
useApiVersion(apiVersion: ApiVersion): GatewayUrlBuilder;
/**
* Creates and returns a builder for a specific node.
* @param name The name of the node to create a builder for.
* @returns A new node URL builder.
*/
node(name: string): NodeUrlBuilder;
}
/** Represents an object that can build URLs for a particular node. */
export declare class NodeUrlBuilder {
private builder;
/**
* Initializes a new instance of the NodeUrlBuilder class.
* @param builder The current UriBuilder.
* @param node The name of the node the URL is being built for.
*/
constructor(builder: UriBuilder, node: string);
/** Makes the current URL builder relative from this point forward. */
makeRelative(): NodeUrlBuilder;
/** Gets a builder for the file transfer feature. **/
fileTransfer(): FileTransferUrlBuilder;
}
/** Represents an object that builds the file URL for an API. */
export declare class ApiUrlBuilder {
private builder;
/**
* Initializes a new instance of the ApiUrlBuilder class.
* @param builder The current UriBuilder.
*/
constructor(builder: UriBuilder);
/** Builds and returns the current URL. */
build(): string;
}
/** Represents an object that can build URLs for a particular feature. */
export declare abstract class FeatureUrlBuilder {
protected builder: UriBuilder;
/**
* Initializes a new instance of the FeatureUrlBuilder class.
* @param builder The current UriBuilder.
* @param node The name of the feature the URL is being built for.
*/
constructor(builder: UriBuilder, name: string);
}
/** Represents an object that can build URLs for file transfers. */
export declare class FileTransferUrlBuilder extends FeatureUrlBuilder {
/**
* Initializes a new instance of the FileTransferUrlBuilder class.
* @param builder The current UriBuilder.
*/
constructor(builder: UriBuilder);
/**
* Adds the specified file path to the URL.
* @param path The path of the file to use.
*/
file(path: string): ApiUrlBuilder;
}