UNPKG

googleapis

Version:
747 lines (746 loc) 31.9 kB
/** * Copyright 2015 Google Inc. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ import { AxiosPromise } from 'axios'; import { GoogleApis } from '../..'; import { BodyResponseCallback, GlobalOptions, MethodOptions } from '../../lib/api'; /** * Cloud TPU API * * TPU API provides customers with access to Google TPU technology. * * @example * const google = require('googleapis'); * const tpu = google.tpu('v1alpha1'); * * @namespace tpu * @type {Function} * @version v1alpha1 * @variation v1alpha1 * @param {object=} options Options for Tpu */ export declare class Tpu { _options: GlobalOptions; google: GoogleApis; root: this; projects: Resource$Projects; constructor(options: GlobalOptions, google: GoogleApis); getRoot(): this; } /** * A accelerator type that a Node can be configured with. */ export interface Schema$AcceleratorType { /** * The resource name. */ name: string; /** * the accelerator type. */ type: string; } /** * A generic empty message that you can re-use to avoid defining duplicated * empty messages in your APIs. A typical example is to use it as the request or * the response type of an API method. For instance: service Foo { rpc * Bar(google.protobuf.Empty) returns (google.protobuf.Empty); } The JSON * representation for `Empty` is empty JSON object `{}`. */ export interface Schema$Empty { } /** * Response for ListAcceleratorTypes. */ export interface Schema$ListAcceleratorTypesResponse { /** * The listed nodes. */ acceleratorTypes: Schema$AcceleratorType[]; /** * The next page token or empty if none. */ nextPageToken: string; } /** * The response message for Locations.ListLocations. */ export interface Schema$ListLocationsResponse { /** * A list of locations that matches the specified filter in the request. */ locations: Schema$Location[]; /** * The standard List next-page token. */ nextPageToken: string; } /** * Response for ListNodes. */ export interface Schema$ListNodesResponse { /** * The next page token or empty if none. */ nextPageToken: string; /** * The listed nodes. */ nodes: Schema$Node[]; } /** * The response message for Operations.ListOperations. */ export interface Schema$ListOperationsResponse { /** * The standard List next-page token. */ nextPageToken: string; /** * A list of operations that matches the specified filter in the request. */ operations: Schema$Operation[]; } /** * Response for ListTensorFlowVersions. */ export interface Schema$ListTensorFlowVersionsResponse { /** * The next page token or empty if none. */ nextPageToken: string; /** * The listed nodes. */ tensorflowVersions: Schema$TensorFlowVersion[]; } /** * A resource that represents Google Cloud Platform location. */ export interface Schema$Location { /** * The friendly name for this location, typically a nearby city name. For * example, &quot;Tokyo&quot;. */ displayName: string; /** * Cross-service attributes for the location. For example * {&quot;cloud.googleapis.com/region&quot;: &quot;us-east1&quot;} */ labels: any; /** * The canonical id for this location. For example: `&quot;us-east1&quot;`. */ locationId: string; /** * Service-specific metadata. For example the available capacity at the given * location. */ metadata: any; /** * Resource name for the location, which may vary between implementations. For * example: `&quot;projects/example-project/locations/us-east1&quot;` */ name: string; } /** * A network endpoint over which a TPU worker can be reached. */ export interface Schema$NetworkEndpoint { /** * The IP address of this network endpoint. */ ipAddress: string; /** * The port of this network endpoint. */ port: number; } /** * A TPU instance. */ export interface Schema$Node { /** * The type of hardware accelerators associated with this node. Required. */ acceleratorType: string; /** * The CIDR block that the TPU node will use when selecting an IP address. * This CIDR block must be a /29 block; the Compute Engine networks API * forbids a smaller block, and using a larger block would be wasteful (a node * can only consume one IP address). Errors will occur if the CIDR block has * already been used for a currently existing TPU node, the CIDR block * conflicts with any subnetworks in the user&#39;s provided network, or the * provided network is peered with another network that is using that CIDR * block. Required. */ cidrBlock: string; /** * Output only. The time when the node was created. */ createTime: string; /** * The user-supplied description of the TPU. Maximum of 512 characters. */ description: string; /** * The health status of the TPU node. */ health: string; /** * Output only. If this field is populated, it contains a description of why * the TPU Node is unhealthy. */ healthDescription: string; /** * Output only. DEPRECATED! Use network_endpoints instead. The network address * for the TPU Node as visible to Compute Engine instances. */ ipAddress: string; /** * Resource labels to represent user-provided metadata. */ labels: any; /** * Output only. The immutable name of the TPU */ name: string; /** * The name of a network they wish to peer the TPU node to. It must be a * preexisting Compute Engine network inside of the project on which this API * has been activated. If none is provided, &quot;default&quot; will be used. */ network: string; /** * Output only. The network endpoints where TPU workers can be accessed and * sent work. It is recommended that Tensorflow clients of the node reach out * to the 0th entry in this map first. */ networkEndpoints: Schema$NetworkEndpoint[]; /** * Output only. DEPRECATED! Use network_endpoints instead. The network port * for the TPU Node as visible to Compute Engine instances. */ port: string; /** * Output only. The service account used to run the tensor flow services * within the node. To share resources, including Google Cloud Storage data, * with the Tensorflow job running in the Node, this account must have * permissions to that data. */ serviceAccount: string; /** * Output only. The current state for the TPU Node. */ state: string; /** * The version of Tensorflow running in the Node. Required. */ tensorflowVersion: string; } /** * This resource represents a long-running operation that is the result of a * network API call. */ export interface Schema$Operation { /** * If the value is `false`, it means the operation is still in progress. If * `true`, the operation is completed, and either `error` or `response` is * available. */ done: boolean; /** * The error result of the operation in case of failure or cancellation. */ error: Schema$Status; /** * Service-specific metadata associated with the operation. It typically * contains progress information and common metadata such as create time. Some * services might not provide such metadata. Any method that returns a * long-running operation should document the metadata type, if any. */ metadata: any; /** * The server-assigned name, which is only unique within the same service that * originally returns it. If you use the default HTTP mapping, the `name` * should have the format of `operations/some/unique/name`. */ name: string; /** * The normal response of the operation in case of success. If the original * method returns no data on success, such as `Delete`, the response is * `google.protobuf.Empty`. If the original method is standard * `Get`/`Create`/`Update`, the response should be the resource. For other * methods, the response should have the type `XxxResponse`, where `Xxx` is * the original method name. For example, if the original method name is * `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`. */ response: any; } /** * Represents the metadata of the long-running operation. */ export interface Schema$OperationMetadata { /** * [Output only] API version used to start the operation. */ apiVersion: string; /** * [Output only] Identifies whether the user has requested cancellation of the * operation. Operations that have successfully been cancelled have * Operation.error value with a google.rpc.Status.code of 1, corresponding to * `Code.CANCELLED`. */ cancelRequested: boolean; /** * [Output only] The time the operation was created. */ createTime: string; /** * [Output only] The time the operation finished running. */ endTime: string; /** * [Output only] Human-readable status of the operation, if any. */ statusDetail: string; /** * [Output only] Server-defined resource path for the target of the operation. */ target: string; /** * [Output only] Name of the verb executed by the operation. */ verb: string; } /** * Request for ReimageNode. */ export interface Schema$ReimageNodeRequest { /** * The version for reimage to create. */ tensorflowVersion: string; } /** * Request for ResetNode. */ export interface Schema$ResetNodeRequest { } /** * Request for StartNode. */ export interface Schema$StartNodeRequest { } /** * The `Status` type defines a logical error model that is suitable for * different programming environments, including REST APIs and RPC APIs. It is * used by [gRPC](https://github.com/grpc). The error model is designed to be: * - Simple to use and understand for most users - Flexible enough to meet * unexpected needs # Overview The `Status` message contains three pieces of * data: error code, error message, and error details. The error code should be * an enum value of google.rpc.Code, but it may accept additional error codes if * needed. The error message should be a developer-facing English message that * helps developers *understand* and *resolve* the error. If a localized * user-facing error message is needed, put the localized message in the error * details or localize it in the client. The optional error details may contain * arbitrary information about the error. There is a predefined set of error * detail types in the package `google.rpc` that can be used for common error * conditions. # Language mapping The `Status` message is the logical * representation of the error model, but it is not necessarily the actual wire * format. When the `Status` message is exposed in different client libraries * and different wire protocols, it can be mapped differently. For example, it * will likely be mapped to some exceptions in Java, but more likely mapped to * some error codes in C. # Other uses The error model and the `Status` * message can be used in a variety of environments, either with or without * APIs, to provide a consistent developer experience across different * environments. Example uses of this error model include: - Partial errors. * If a service needs to return partial errors to the client, it may embed * the `Status` in the normal response to indicate the partial errors. - * Workflow errors. A typical workflow has multiple steps. Each step may have a * `Status` message for error reporting. - Batch operations. If a client uses * batch request and batch response, the `Status` message should be used * directly inside batch response, one for each error sub-response. - * Asynchronous operations. If an API call embeds asynchronous operation results * in its response, the status of those operations should be represented * directly using the `Status` message. - Logging. If some API errors are * stored in logs, the message `Status` could be used directly after any * stripping needed for security/privacy reasons. */ export interface Schema$Status { /** * The status code, which should be an enum value of google.rpc.Code. */ code: number; /** * A list of messages that carry the error details. There is a common set of * message types for APIs to use. */ details: any[]; /** * A developer-facing error message, which should be in English. Any * user-facing error message should be localized and sent in the * google.rpc.Status.details field, or localized by the client. */ message: string; } /** * Request for StopNode. */ export interface Schema$StopNodeRequest { } /** * A tensorflow version that a Node can be configured with. */ export interface Schema$TensorFlowVersion { /** * The resource name. */ name: string; /** * the tensorflow version. */ version: string; } export declare class Resource$Projects { root: Tpu; locations: Resource$Projects$Locations; constructor(root: Tpu); getRoot(): Tpu; } export declare class Resource$Projects$Locations { root: Tpu; acceleratorTypes: Resource$Projects$Locations$Acceleratortypes; nodes: Resource$Projects$Locations$Nodes; operations: Resource$Projects$Locations$Operations; tensorflowVersions: Resource$Projects$Locations$Tensorflowversions; constructor(root: Tpu); getRoot(): Tpu; /** * tpu.projects.locations.get * @desc Gets information about a location. * @alias tpu.projects.locations.get * @memberOf! () * * @param {object} params Parameters for request * @param {string} params.name Resource name for the location. * @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`. * @param {callback} callback The callback that handles the response. * @return {object} Request object */ get(params?: any, options?: MethodOptions): AxiosPromise<Schema$Location>; get(params?: any, options?: MethodOptions | BodyResponseCallback<Schema$Location>, callback?: BodyResponseCallback<Schema$Location>): void; /** * tpu.projects.locations.list * @desc Lists information about the supported locations for this service. * @alias tpu.projects.locations.list * @memberOf! () * * @param {object} params Parameters for request * @param {string=} params.filter The standard list filter. * @param {string} params.name The resource that owns the locations collection, if applicable. * @param {integer=} params.pageSize The standard list page size. * @param {string=} params.pageToken The standard list page token. * @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`. * @param {callback} callback The callback that handles the response. * @return {object} Request object */ list(params?: any, options?: MethodOptions): AxiosPromise<Schema$ListLocationsResponse>; list(params?: any, options?: MethodOptions | BodyResponseCallback<Schema$ListLocationsResponse>, callback?: BodyResponseCallback<Schema$ListLocationsResponse>): void; } export declare class Resource$Projects$Locations$Acceleratortypes { root: Tpu; constructor(root: Tpu); getRoot(): Tpu; /** * tpu.projects.locations.acceleratorTypes.get * @desc Gets AcceleratorType. * @alias tpu.projects.locations.acceleratorTypes.get * @memberOf! () * * @param {object} params Parameters for request * @param {string} params.name The resource name. * @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`. * @param {callback} callback The callback that handles the response. * @return {object} Request object */ get(params?: any, options?: MethodOptions): AxiosPromise<Schema$AcceleratorType>; get(params?: any, options?: MethodOptions | BodyResponseCallback<Schema$AcceleratorType>, callback?: BodyResponseCallback<Schema$AcceleratorType>): void; /** * tpu.projects.locations.acceleratorTypes.list * @desc Lists accelerator types supported by this API. * @alias tpu.projects.locations.acceleratorTypes.list * @memberOf! () * * @param {object} params Parameters for request * @param {string=} params.filter List filter. * @param {string=} params.orderBy Sort results. * @param {integer=} params.pageSize The maximum number of items to return. * @param {string=} params.pageToken The next_page_token value returned from a previous List request, if any. * @param {string} params.parent The parent resource name. * @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`. * @param {callback} callback The callback that handles the response. * @return {object} Request object */ list(params?: any, options?: MethodOptions): AxiosPromise<Schema$ListAcceleratorTypesResponse>; list(params?: any, options?: MethodOptions | BodyResponseCallback<Schema$ListAcceleratorTypesResponse>, callback?: BodyResponseCallback<Schema$ListAcceleratorTypesResponse>): void; } export declare class Resource$Projects$Locations$Nodes { root: Tpu; constructor(root: Tpu); getRoot(): Tpu; /** * tpu.projects.locations.nodes.create * @desc Creates a node. * @alias tpu.projects.locations.nodes.create * @memberOf! () * * @param {object} params Parameters for request * @param {string=} params.nodeId The unqualified resource name. * @param {string} params.parent The parent resource name. * @param {().Node} params.resource Request body data * @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`. * @param {callback} callback The callback that handles the response. * @return {object} Request object */ create(params?: any, options?: MethodOptions): AxiosPromise<Schema$Operation>; create(params?: any, options?: MethodOptions | BodyResponseCallback<Schema$Operation>, callback?: BodyResponseCallback<Schema$Operation>): void; /** * tpu.projects.locations.nodes.delete * @desc Deletes a node. * @alias tpu.projects.locations.nodes.delete * @memberOf! () * * @param {object} params Parameters for request * @param {string} params.name The resource name. * @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`. * @param {callback} callback The callback that handles the response. * @return {object} Request object */ delete(params?: any, options?: MethodOptions): AxiosPromise<Schema$Operation>; delete(params?: any, options?: MethodOptions | BodyResponseCallback<Schema$Operation>, callback?: BodyResponseCallback<Schema$Operation>): void; /** * tpu.projects.locations.nodes.get * @desc Gets the details of a node. * @alias tpu.projects.locations.nodes.get * @memberOf! () * * @param {object} params Parameters for request * @param {string} params.name The resource name. * @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`. * @param {callback} callback The callback that handles the response. * @return {object} Request object */ get(params?: any, options?: MethodOptions): AxiosPromise<Schema$Node>; get(params?: any, options?: MethodOptions | BodyResponseCallback<Schema$Node>, callback?: BodyResponseCallback<Schema$Node>): void; /** * tpu.projects.locations.nodes.list * @desc Lists nodes. * @alias tpu.projects.locations.nodes.list * @memberOf! () * * @param {object} params Parameters for request * @param {integer=} params.pageSize The maximum number of items to return. * @param {string=} params.pageToken The next_page_token value returned from a previous List request, if any. * @param {string} params.parent The parent resource name. * @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`. * @param {callback} callback The callback that handles the response. * @return {object} Request object */ list(params?: any, options?: MethodOptions): AxiosPromise<Schema$ListNodesResponse>; list(params?: any, options?: MethodOptions | BodyResponseCallback<Schema$ListNodesResponse>, callback?: BodyResponseCallback<Schema$ListNodesResponse>): void; /** * tpu.projects.locations.nodes.reimage * @desc Reimages a node's OS. * @alias tpu.projects.locations.nodes.reimage * @memberOf! () * * @param {object} params Parameters for request * @param {string} params.name The resource name. * @param {().ReimageNodeRequest} params.resource Request body data * @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`. * @param {callback} callback The callback that handles the response. * @return {object} Request object */ reimage(params?: any, options?: MethodOptions): AxiosPromise<Schema$Operation>; reimage(params?: any, options?: MethodOptions | BodyResponseCallback<Schema$Operation>, callback?: BodyResponseCallback<Schema$Operation>): void; /** * tpu.projects.locations.nodes.reset * @desc Resets a node, which stops and starts the VM. * @alias tpu.projects.locations.nodes.reset * @memberOf! () * * @param {object} params Parameters for request * @param {string} params.name The resource name. * @param {().ResetNodeRequest} params.resource Request body data * @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`. * @param {callback} callback The callback that handles the response. * @return {object} Request object */ reset(params?: any, options?: MethodOptions): AxiosPromise<Schema$Operation>; reset(params?: any, options?: MethodOptions | BodyResponseCallback<Schema$Operation>, callback?: BodyResponseCallback<Schema$Operation>): void; /** * tpu.projects.locations.nodes.start * @desc Starts a node. * @alias tpu.projects.locations.nodes.start * @memberOf! () * * @param {object} params Parameters for request * @param {string} params.name The resource name. * @param {().StartNodeRequest} params.resource Request body data * @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`. * @param {callback} callback The callback that handles the response. * @return {object} Request object */ start(params?: any, options?: MethodOptions): AxiosPromise<Schema$Operation>; start(params?: any, options?: MethodOptions | BodyResponseCallback<Schema$Operation>, callback?: BodyResponseCallback<Schema$Operation>): void; /** * tpu.projects.locations.nodes.stop * @desc Stops a node. * @alias tpu.projects.locations.nodes.stop * @memberOf! () * * @param {object} params Parameters for request * @param {string} params.name The resource name. * @param {().StopNodeRequest} params.resource Request body data * @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`. * @param {callback} callback The callback that handles the response. * @return {object} Request object */ stop(params?: any, options?: MethodOptions): AxiosPromise<Schema$Operation>; stop(params?: any, options?: MethodOptions | BodyResponseCallback<Schema$Operation>, callback?: BodyResponseCallback<Schema$Operation>): void; } export declare class Resource$Projects$Locations$Operations { root: Tpu; constructor(root: Tpu); getRoot(): Tpu; /** * tpu.projects.locations.operations.cancel * @desc Starts asynchronous cancellation on a long-running operation. The * server makes a best effort to cancel the operation, but success is not * guaranteed. If the server doesn't support this method, it returns * `google.rpc.Code.UNIMPLEMENTED`. Clients can use Operations.GetOperation * or other methods to check whether the cancellation succeeded or whether the * operation completed despite cancellation. On successful cancellation, the * operation is not deleted; instead, it becomes an operation with an * Operation.error value with a google.rpc.Status.code of 1, corresponding to * `Code.CANCELLED`. * @alias tpu.projects.locations.operations.cancel * @memberOf! () * * @param {object} params Parameters for request * @param {string} params.name The name of the operation resource to be cancelled. * @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`. * @param {callback} callback The callback that handles the response. * @return {object} Request object */ cancel(params?: any, options?: MethodOptions): AxiosPromise<Schema$Empty>; cancel(params?: any, options?: MethodOptions | BodyResponseCallback<Schema$Empty>, callback?: BodyResponseCallback<Schema$Empty>): void; /** * tpu.projects.locations.operations.delete * @desc Deletes a long-running operation. This method indicates that the * client is no longer interested in the operation result. It does not cancel * the operation. If the server doesn't support this method, it returns * `google.rpc.Code.UNIMPLEMENTED`. * @alias tpu.projects.locations.operations.delete * @memberOf! () * * @param {object} params Parameters for request * @param {string} params.name The name of the operation resource to be deleted. * @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`. * @param {callback} callback The callback that handles the response. * @return {object} Request object */ delete(params?: any, options?: MethodOptions): AxiosPromise<Schema$Empty>; delete(params?: any, options?: MethodOptions | BodyResponseCallback<Schema$Empty>, callback?: BodyResponseCallback<Schema$Empty>): void; /** * tpu.projects.locations.operations.get * @desc Gets the latest state of a long-running operation. Clients can use * this method to poll the operation result at intervals as recommended by the * API service. * @alias tpu.projects.locations.operations.get * @memberOf! () * * @param {object} params Parameters for request * @param {string} params.name The name of the operation resource. * @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`. * @param {callback} callback The callback that handles the response. * @return {object} Request object */ get(params?: any, options?: MethodOptions): AxiosPromise<Schema$Operation>; get(params?: any, options?: MethodOptions | BodyResponseCallback<Schema$Operation>, callback?: BodyResponseCallback<Schema$Operation>): void; /** * tpu.projects.locations.operations.list * @desc Lists operations that match the specified filter in the request. If * the server doesn't support this method, it returns `UNIMPLEMENTED`. NOTE: * the `name` binding allows API services to override the binding to use * different resource name schemes, such as `users/x/operations`. To override * the binding, API services can add a binding such as * `"/v1/{name=users/x}/operations"` to their service configuration. For * backwards compatibility, the default name includes the operations * collection id, however overriding users must ensure the name binding is the * parent resource, without the operations collection id. * @alias tpu.projects.locations.operations.list * @memberOf! () * * @param {object} params Parameters for request * @param {string=} params.filter The standard list filter. * @param {string} params.name The name of the operation's parent resource. * @param {integer=} params.pageSize The standard list page size. * @param {string=} params.pageToken The standard list page token. * @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`. * @param {callback} callback The callback that handles the response. * @return {object} Request object */ list(params?: any, options?: MethodOptions): AxiosPromise<Schema$ListOperationsResponse>; list(params?: any, options?: MethodOptions | BodyResponseCallback<Schema$ListOperationsResponse>, callback?: BodyResponseCallback<Schema$ListOperationsResponse>): void; } export declare class Resource$Projects$Locations$Tensorflowversions { root: Tpu; constructor(root: Tpu); getRoot(): Tpu; /** * tpu.projects.locations.tensorflowVersions.get * @desc Gets TensorFlow Version. * @alias tpu.projects.locations.tensorflowVersions.get * @memberOf! () * * @param {object} params Parameters for request * @param {string} params.name The resource name. * @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`. * @param {callback} callback The callback that handles the response. * @return {object} Request object */ get(params?: any, options?: MethodOptions): AxiosPromise<Schema$TensorFlowVersion>; get(params?: any, options?: MethodOptions | BodyResponseCallback<Schema$TensorFlowVersion>, callback?: BodyResponseCallback<Schema$TensorFlowVersion>): void; /** * tpu.projects.locations.tensorflowVersions.list * @desc Lists TensorFlow versions supported by this API. * @alias tpu.projects.locations.tensorflowVersions.list * @memberOf! () * * @param {object} params Parameters for request * @param {string=} params.filter List filter. * @param {string=} params.orderBy Sort results. * @param {integer=} params.pageSize The maximum number of items to return. * @param {string=} params.pageToken The next_page_token value returned from a previous List request, if any. * @param {string} params.parent The parent resource name. * @param {object} [options] Optionally override request options, such as `url`, `method`, and `encoding`. * @param {callback} callback The callback that handles the response. * @return {object} Request object */ list(params?: any, options?: MethodOptions): AxiosPromise<Schema$ListTensorFlowVersionsResponse>; list(params?: any, options?: MethodOptions | BodyResponseCallback<Schema$ListTensorFlowVersionsResponse>, callback?: BodyResponseCallback<Schema$ListTensorFlowVersionsResponse>): void; }