"use strict";
// MOVED TO ops-common
// /** The shape of the ~/.docker/config.json file.
//  * @see https://docs.docker.com/engine/reference/commandline/cli/#configuration-files Configuration files
//  * @see https://docs.docker.com/engine/reference/commandline/cli/#configjson-properties config.json properties
//  */
// export interface IDockerConfig {
//   /** specifies a set of headers to include in all messages sent from the Docker client to the daemon. 
//    * Docker does not try to interpret or understand these header; it simply puts them into the messages. 
//    * Docker does not allow these headers to change any headers it sets for itself. */
//   HttpHeaders?: string;
//   /** specifies the default format for docker ps output. 
//    * When the --format flag is not provided with the docker ps command, Docker’s client uses this property. 
//    * If this property is not set, the client falls back to the default table format. 
//    * For a list of supported formatting directives, 
//    * @see https://docs.docker.com/engine/reference/commandline/ps/#formatting the Formatting section in the docker ps documentation */
//   psFormat?: string;
//   /** specifies the default format for docker images output. 
//    * When the --format flag is not provided with the docker images command, 
//    * Docker’s client uses this property. If this property is not set, 
//    * the client falls back to the default table format. 
//    * For a list of supported formatting directives, 
//    * see the Formatting section in the docker images documentation */
//   imagesFormat?: string;
//   /** specifies the default format for docker plugin ls output. 
//    * When the --format flag is not provided with the docker plugin ls command, 
//    * Docker’s client uses this property. If this property is not set, 
//    * the client falls back to the default table format. 
//    * For a list of supported formatting directives, 
//    * see the Formatting section in the docker plugin ls documentation */
//   pluginsFormat?: string;
//   /** specifies the default format for docker service ls output. 
//    * When the --format flag is not provided with the docker service ls command, 
//    * Docker’s client uses this property. If this property is not set, 
//    * the client falls back to the default json format. 
//    * For a list of supported formatting directives, 
//    * see the Formatting section in the docker service ls documentation */
//   servicesFormat?: string;
//   /** specifies the default format for docker service inspect output. 
//    * When the --format flag is not provided with the docker service inspect command, 
//    * Docker’s client uses this property. If this property is not set, 
//    * the client falls back to the default json format. 
//    * For a list of supported formatting directives, 
//    * see the Formatting section in the docker service inspect documentation */
//   serviceInspectFormat?: string;
//   /** specifies the default format for docker stats output. 
//    * When the --format flag is not provided with the docker stats command, 
//    * Docker’s client uses this property. If this property is not set, 
//    * the client falls back to the default table format. 
//    * For a list of supported formatting directives, 
//    * see Formatting section in the docker stats documentation */
//   statsFormat?: string;
//   /** specifies the default format for docker secret ls output. 
//    * When the --format flag is not provided with the docker secret ls command, 
//    * Docker’s client uses this property. If this property is not set, 
//    * the client falls back to the default table format. 
//    * For a list of supported formatting directives, 
//    * see Formatting section in the docker secret ls documentation */
//   secretFormat?: string;
//   /** specifies the default format for docker node ls output. 
//    * When the --format flag is not provided with the docker node ls command, 
//    * Docker’s client uses the value of nodesFormat. If the value of nodesFormat is not set, 
//    * the client uses the default table format. 
//    * For a list of supported formatting directives, 
//    * see the Formatting section in the docker node ls documentation */
//   nodesFormat?: string;
//   /** specifies the default format for docker config ls output. 
//    * When the --format flag is not provided with the docker config ls command, 
//    * Docker’s client uses this property. If this property is not set, 
//    * the client falls back to the default table format. 
//    * For a list of supported formatting directives, 
//    * see Formatting section in the docker config ls documentation */
//   configFormat?: string;
//   /** Stores credentials keyed by registry and scope 
//    * when neither "credHelpers" is set for the relevant registry scope 
//    * nor "credsStore" is set.  */
//   auths?: { [registry: string]: UsernamePassword };
//   /** specifies an external binary to serve as the default credential store. When this property is set, 
//    * docker login will attempt to store credentials in the binary specified by docker-credential-<value> 
//    * which is visible on $PATH. If this property is not set, 
//    * credentials will be stored in the auths property of the config. 
//    * @see https://docs.docker.com/engine/reference/commandline/login/#credentials-store the Credentials store section in the docker login documentation */
//   credsStore?: string;
//   /** specifies a set of credential helpers to use preferentially over credsStore or auths 
//    * when storing and retrieving credentials for specific registries. If this property is set, 
//    * the binary docker-credential-<value> will be used when storing or retrieving credentials 
//    * for a specific registry.
//    * @see https://docs.docker.com/engine/reference/commandline/login/#credential-helpers  Credential helpers section in the docker login documentation */
//   credHelpers?: {[registry: string]: string};
//   /** specifies the default orchestrator to use when running docker stack management commands. 
//    * Valid values are "swarm", "kubernetes", and "all". 
//    * This property can be overridden with the DOCKER_STACK_ORCHESTRATOR environment variable, or the --orchestrator flag. */
//   stackOrchestrator?: string;
//   /** specifies proxy environment variables to be automatically set on containers, 
//    * and set as --build-arg on containers used during docker build. 
//    * A "default" set of proxies can be configured, and will be used for any docker daemon 
//    * that the client connects to, or a configuration per host (docker daemon), 
//    * for example, “https://docker-daemon1.example.com”.  */
//   proxies?: DockerProxyEnum[];
//   /**  */
//   plugins?: string;
// }
// export enum DockerProxyEnum {
//   /** sets the value of HTTP_PROXY and http_proxy. */
//   httpProxy = "httpProxy",
//   /** sets the value of HTTPS_PROXY and https_proxy. */
//   httpsProxy = "httpsProxy",
//   /** sets the value of FTP_PROXY and ftp_proxy. */
//   ftpProxy = "ftpProxy",
//   /** sets the value of NO_PROXY and no_proxy. */
//   noProxy = "noProxy",
// }
// export class UsernamePassword {
//   constructor(public Username: string, public Secret: string) {
//   }
// }
// /** Docker's required contract for credentials returned from a credential store binary.
//  * **Note the title casing of the properties** 
//  * @see https://docs.docker.com/engine/reference/commandline/login/#credentials-store
//  */
//   export class RegistryCredentials extends UsernamePassword {
//     /**
//    * @param Username Use "<token>" if passing an api token as the secret.
//    * @param Secret Password or api token
//    * @param ServerURL Registry domain name without protocol or path (though Docker's example shows this as a fully qualified url with protocol)
//    */
//   constructor(Username: string, Secret: string, public ServerURL: string) {
//     super(Username, Secret)
//   }
// }
//# sourceMappingURL=docker-config.js.map