// Type definitions for non-npm package Google Google Cloud Deployment Manager API v2 2.0 // Project: https://cloud.google.com/deployment-manager/ // Definitions by: Bolisov Alexey // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.3 // IMPORTANT // This file was generated by https://github.com/Bolisov/google-api-typings-generator. Please do not edit it manually. // In case of any problems please post issue to https://github.com/Bolisov/google-api-typings-generator // Generated from: https://www.googleapis.com/discovery/v1/apis/deploymentmanager/v2/rest /// declare namespace gapi.client { /** Load Google Cloud Deployment Manager API v2 */ function load(name: "deploymentmanager", version: "v2"): PromiseLike; function load(name: "deploymentmanager", version: "v2", callback: () => any): void; const deployments: deploymentmanager.DeploymentsResource; const manifests: deploymentmanager.ManifestsResource; const operations: deploymentmanager.OperationsResource; const resources: deploymentmanager.ResourcesResource; const types: deploymentmanager.TypesResource; namespace deploymentmanager { interface AuditConfig { /** The configuration for logging of each type of permission. */ auditLogConfigs?: AuditLogConfig[]; exemptedMembers?: string[]; /** * Specifies a service that will be enabled for audit logging. For example, `storage.googleapis.com`, `cloudsql.googleapis.com`. `allServices` is a * special value that covers all services. */ service?: string; } interface AuditLogConfig { /** Specifies the identities that do not cause logging for this type of permission. Follows the same format of [Binding.members][]. */ exemptedMembers?: string[]; /** The log type that this config enables. */ logType?: string; } interface AuthorizationLoggingOptions { /** The type of the permission that was checked. */ permissionType?: string; } interface Binding { /** * The condition that is associated with this binding. NOTE: an unsatisfied condition will not allow user access via current binding. Different bindings, * including their conditions, are examined independently. This field is GOOGLE_INTERNAL. */ condition?: Expr; /** * Specifies the identities requesting access for a Cloud Platform resource. `members` can have the following values: * * * `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account. * * * `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account. * * * `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@gmail.com` or `joe@example.com`. * * * * * `serviceAccount:{emailid}`: An email address that represents a service account. For example, `my-other-app@appspot.gserviceaccount.com`. * * * `group:{emailid}`: An email address that represents a Google group. For example, `admins@example.com`. * * * * * `domain:{domain}`: A Google Apps domain name that represents all the users of that domain. For example, `google.com` or `example.com`. */ members?: string[]; /** Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor`, or `roles/owner`. */ role?: string; } interface Condition { /** Trusted attributes supplied by the IAM system. */ iam?: string; /** An operator to apply the subject with. */ op?: string; /** Trusted attributes discharged by the service. */ svc?: string; /** Trusted attributes supplied by any service that owns resources and uses the IAM system for access control. */ sys?: string; /** DEPRECATED. Use 'values' instead. */ value?: string; /** The objects of the condition. This is mutually exclusive with 'value'. */ values?: string[]; } interface ConfigFile { /** The contents of the file. */ content?: string; } interface Deployment { /** An optional user-provided description of the deployment. */ description?: string; /** * Provides a fingerprint to use in requests to modify a deployment, such as update(), stop(), and cancelPreview() requests. A fingerprint is a randomly * generated value that must be provided with update(), stop(), and cancelPreview() requests to perform optimistic locking. This ensures optimistic * concurrency so that only one request happens at a time. * * The fingerprint is initially generated by Deployment Manager and changes after every request to modify data. To get the latest fingerprint value, * perform a get() request to a deployment. */ fingerprint?: string; /** Output only. Unique identifier for the resource; defined by the server. */ id?: string; /** Output only. Timestamp when the deployment was created, in RFC3339 text format . */ insertTime?: string; /** * Map of labels; provided by the client when the resource is created or updated. Specifically: Label keys must be between 1 and 63 characters long and * must conform to the following regular expression: [a-z]([-a-z0-9]*[a-z0-9])? Label values must be between 0 and 63 characters long and must conform to * the regular expression ([a-z]([-a-z0-9]*[a-z0-9])?)? */ labels?: DeploymentLabelEntry[]; /** Output only. URL of the manifest representing the last manifest that was successfully deployed. */ manifest?: string; /** * Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. * Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be * a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. */ name?: string; /** Output only. The Operation that most recently ran, or is currently running, on this deployment. */ operation?: Operation; /** Output only. Self link for the deployment. */ selfLink?: string; /** [Input Only] The parameters that define your deployment, including the deployment configuration and relevant templates. */ target?: TargetConfiguration; /** Output only. If Deployment Manager is currently updating or previewing an update to this deployment, the updated configuration appears here. */ update?: DeploymentUpdate; } interface DeploymentLabelEntry { key?: string; value?: string; } interface DeploymentUpdate { /** Output only. An optional user-provided description of the deployment after the current update has been applied. */ description?: string; /** * Output only. Map of labels; provided by the client when the resource is created or updated. Specifically: Label keys must be between 1 and 63 * characters long and must conform to the following regular expression: [a-z]([-a-z0-9]*[a-z0-9])? Label values must be between 0 and 63 characters long * and must conform to the regular expression ([a-z]([-a-z0-9]*[a-z0-9])?)? */ labels?: DeploymentUpdateLabelEntry[]; /** Output only. URL of the manifest representing the update configuration of this deployment. */ manifest?: string; } interface DeploymentUpdateLabelEntry { key?: string; value?: string; } interface DeploymentsCancelPreviewRequest { /** * Specifies a fingerprint for cancelPreview() requests. A fingerprint is a randomly generated value that must be provided in cancelPreview() requests to * perform optimistic locking. This ensures optimistic concurrency so that the deployment does not have conflicting requests (e.g. if someone attempts to * make a new update request while another user attempts to cancel a preview, this would prevent one of the requests). * * The fingerprint is initially generated by Deployment Manager and changes after every request to modify a deployment. To get the latest fingerprint * value, perform a get() request on the deployment. */ fingerprint?: string; } interface DeploymentsListResponse { /** Output only. The deployments contained in this response. */ deployments?: Deployment[]; /** Output only. A token used to continue a truncated list request. */ nextPageToken?: string; } interface DeploymentsStopRequest { /** * Specifies a fingerprint for stop() requests. A fingerprint is a randomly generated value that must be provided in stop() requests to perform optimistic * locking. This ensures optimistic concurrency so that the deployment does not have conflicting requests (e.g. if someone attempts to make a new update * request while another user attempts to stop an ongoing update request, this would prevent a collision). * * The fingerprint is initially generated by Deployment Manager and changes after every request to modify a deployment. To get the latest fingerprint * value, perform a get() request on the deployment. */ fingerprint?: string; } interface Expr { /** An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI. */ description?: string; /** * Textual representation of an expression in Common Expression Language syntax. * * The application context of the containing message determines which well-known feature set of CEL is supported. */ expression?: string; /** An optional string indicating the location of the expression for error reporting, e.g. a file name and a position in the file. */ location?: string; /** An optional title for the expression, i.e. a short string describing its purpose. This can be used e.g. in UIs which allow to enter the expression. */ title?: string; } interface ImportFile { /** The contents of the file. */ content?: string; /** The name of the file. */ name?: string; } interface LogConfig { /** Cloud audit options. */ cloudAudit?: LogConfigCloudAuditOptions; /** Counter options. */ counter?: LogConfigCounterOptions; /** Data access options. */ dataAccess?: LogConfigDataAccessOptions; } interface LogConfigCloudAuditOptions { /** Information used by the Cloud Audit Logging pipeline. */ authorizationLoggingOptions?: AuthorizationLoggingOptions; /** The log_name to populate in the Cloud Audit Record. */ logName?: string; } interface LogConfigCounterOptions { /** The field value to attribute. */ field?: string; /** The metric to update. */ metric?: string; } interface LogConfigDataAccessOptions { /** Whether Gin logging should happen in a fail-closed manner at the caller. This is relevant only in the LocalIAM implementation, for now. */ logMode?: string; } interface Manifest { /** Output only. The YAML configuration for this manifest. */ config?: ConfigFile; /** Output only. The fully-expanded configuration file, including any templates and references. */ expandedConfig?: string; /** Output only. Unique identifier for the resource; defined by the server. */ id?: string; /** Output only. The imported files for this manifest. */ imports?: ImportFile[]; /** Output only. Timestamp when the manifest was created, in RFC3339 text format. */ insertTime?: string; /** Output only. The YAML layout for this manifest. */ layout?: string; /** * Output only. * * The name of the manifest. */ name?: string; /** Output only. Self link for the manifest. */ selfLink?: string; } interface ManifestsListResponse { /** Output only. Manifests contained in this list response. */ manifests?: Manifest[]; /** Output only. A token used to continue a truncated list request. */ nextPageToken?: string; } interface Operation { /** [Output Only] Reserved for future use. */ clientOperationId?: string; /** [Deprecated] This field is deprecated. */ creationTimestamp?: string; /** [Output Only] A textual description of the operation, which is set when the operation is created. */ description?: string; /** [Output Only] The time that this operation was completed. This value is in RFC3339 text format. */ endTime?: string; /** [Output Only] If errors are generated during processing of the operation, this field will be populated. */ error?: { /** [Output Only] The array of errors encountered while processing this operation. */ errors?: Array<{ /** [Output Only] The error type identifier for this error. */ code?: string; /** [Output Only] Indicates the field in the request that caused the error. This property is optional. */ location?: string; /** [Output Only] An optional, human-readable error message. */ message?: string; }>; }; /** [Output Only] If the operation fails, this field contains the HTTP error message that was returned, such as NOT FOUND. */ httpErrorMessage?: string; /** * [Output Only] If the operation fails, this field contains the HTTP error status code that was returned. For example, a 404 means the resource was not * found. */ httpErrorStatusCode?: number; /** [Output Only] The unique identifier for the resource. This identifier is defined by the server. */ id?: string; /** [Output Only] The time that this operation was requested. This value is in RFC3339 text format. */ insertTime?: string; /** [Output Only] Type of the resource. Always compute#operation for Operation resources. */ kind?: string; /** [Output Only] Name of the resource. */ name?: string; /** [Output Only] The type of operation, such as insert, update, or delete, and so on. */ operationType?: string; /** * [Output Only] An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of * operations. This should not be used to guess when the operation will be complete. This number should monotonically increase as the operation * progresses. */ progress?: number; /** [Output Only] The URL of the region where the operation resides. Only available when performing regional operations. */ region?: string; /** [Output Only] Server-defined URL for the resource. */ selfLink?: string; /** [Output Only] The time that this operation was started by the server. This value is in RFC3339 text format. */ startTime?: string; /** [Output Only] The status of the operation, which can be one of the following: PENDING, RUNNING, or DONE. */ status?: string; /** [Output Only] An optional textual description of the current status of the operation. */ statusMessage?: string; /** [Output Only] The unique target ID, which identifies a specific incarnation of the target resource. */ targetId?: string; /** * [Output Only] The URL of the resource that the operation modifies. For operations related to creating a snapshot, this points to the persistent disk * that the snapshot was created from. */ targetLink?: string; /** [Output Only] User who requested the operation, for example: user@example.com. */ user?: string; /** [Output Only] If warning messages are generated during processing of the operation, this field will be populated. */ warnings?: Array<{ /** [Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response. */ code?: string; /** * [Output Only] Metadata about this warning in key: value format. For example: * "data": [ { "key": "scope", "value": "zones/us-east1-d" } */ data?: Array<{ /** * [Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for * a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and * a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled * for IP forwarding). */ key?: string; /** [Output Only] A warning data value corresponding to the key. */ value?: string; }>; /** [Output Only] A human-readable description of the warning code. */ message?: string; }>; /** [Output Only] The URL of the zone where the operation resides. Only available when performing per-zone operations. */ zone?: string; } interface OperationsListResponse { /** Output only. A token used to continue a truncated list request. */ nextPageToken?: string; /** Output only. Operations contained in this list response. */ operations?: Operation[]; } interface Policy { /** Specifies cloud audit logging configuration for this policy. */ auditConfigs?: AuditConfig[]; /** Associates a list of `members` to a `role`. `bindings` with no members will result in an error. */ bindings?: Binding[]; /** * `etag` is used for optimistic concurrency control as a way to help prevent simultaneous updates of a policy from overwriting each other. It is strongly * suggested that systems make use of the `etag` in the read-modify-write cycle to perform policy updates in order to avoid race conditions: An `etag` is * returned in the response to `getIamPolicy`, and systems are expected to put that etag in the request to `setIamPolicy` to ensure that their change will * be applied to the same version of the policy. * * If no `etag` is provided in the call to `setIamPolicy`, then the existing policy is overwritten blindly. */ etag?: string; iamOwned?: boolean; /** * If more than one rule is specified, the rules are applied in the following manner: - All matching LOG rules are always applied. - If any * DENY/DENY_WITH_LOG rule matches, permission is denied. Logging will be applied if one or more matching rule requires logging. - Otherwise, if any * ALLOW/ALLOW_WITH_LOG rule matches, permission is granted. Logging will be applied if one or more matching rule requires logging. - Otherwise, if no * rule applies, permission is denied. */ rules?: Rule[]; /** Version of the `Policy`. The default version is 0. */ version?: number; } interface Resource { /** The Access Control Policy set on this resource. */ accessControl?: ResourceAccessControl; /** Output only. The evaluated properties of the resource with references expanded. Returned as serialized YAML. */ finalProperties?: string; /** Output only. Unique identifier for the resource; defined by the server. */ id?: string; /** Output only. Timestamp when the resource was created or acquired, in RFC3339 text format . */ insertTime?: string; /** Output only. URL of the manifest representing the current configuration of this resource. */ manifest?: string; /** Output only. The name of the resource as it appears in the YAML config. */ name?: string; /** Output only. The current properties of the resource before any references have been filled in. Returned as serialized YAML. */ properties?: string; /** Output only. The type of the resource, for example compute.v1.instance, or cloudfunctions.v1beta1.function. */ type?: string; /** Output only. If Deployment Manager is currently updating or previewing an update to this resource, the updated configuration appears here. */ update?: ResourceUpdate; /** Output only. Timestamp when the resource was updated, in RFC3339 text format . */ updateTime?: string; /** Output only. The URL of the actual resource. */ url?: string; /** Output only. If warning messages are generated during processing of this resource, this field will be populated. */ warnings?: Array<{ /** [Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response. */ code?: string; /** * [Output Only] Metadata about this warning in key: value format. For example: * "data": [ { "key": "scope", "value": "zones/us-east1-d" } */ data?: Array<{ /** * [Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for * a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and * a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled * for IP forwarding). */ key?: string; /** [Output Only] A warning data value corresponding to the key. */ value?: string; }>; /** [Output Only] A human-readable description of the warning code. */ message?: string; }>; } interface ResourceAccessControl { /** The GCP IAM Policy to set on the resource. */ gcpIamPolicy?: string; } interface ResourceUpdate { /** The Access Control Policy to set on this resource after updating the resource itself. */ accessControl?: ResourceAccessControl; /** Output only. If errors are generated during update of the resource, this field will be populated. */ error?: { /** [Output Only] The array of errors encountered while processing this operation. */ errors?: Array<{ /** [Output Only] The error type identifier for this error. */ code?: string; /** [Output Only] Indicates the field in the request that caused the error. This property is optional. */ location?: string; /** [Output Only] An optional, human-readable error message. */ message?: string; }>; }; /** Output only. The expanded properties of the resource with reference values expanded. Returned as serialized YAML. */ finalProperties?: string; /** Output only. The intent of the resource: PREVIEW, UPDATE, or CANCEL. */ intent?: string; /** Output only. URL of the manifest representing the update configuration of this resource. */ manifest?: string; /** Output only. The set of updated properties for this resource, before references are expanded. Returned as serialized YAML. */ properties?: string; /** Output only. The state of the resource. */ state?: string; /** Output only. If warning messages are generated during processing of this resource, this field will be populated. */ warnings?: Array<{ /** [Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response. */ code?: string; /** * [Output Only] Metadata about this warning in key: value format. For example: * "data": [ { "key": "scope", "value": "zones/us-east1-d" } */ data?: Array<{ /** * [Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for * a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and * a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled * for IP forwarding). */ key?: string; /** [Output Only] A warning data value corresponding to the key. */ value?: string; }>; /** [Output Only] A human-readable description of the warning code. */ message?: string; }>; } interface ResourcesListResponse { /** A token used to continue a truncated list request. */ nextPageToken?: string; /** Resources contained in this list response. */ resources?: Resource[]; } interface Rule { /** Required */ action?: string; /** Additional restrictions that must be met. All conditions must pass for the rule to match. */ conditions?: Condition[]; /** Human-readable description of the rule. */ description?: string; /** If one or more 'in' clauses are specified, the rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is in at least one of these entries. */ ins?: string[]; /** The config returned to callers of tech.iam.IAM.CheckPolicy for any entries that match the LOG action. */ logConfigs?: LogConfig[]; /** If one or more 'not_in' clauses are specified, the rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is in none of the entries. */ notIns?: string[]; /** * A permission is a string of form '..' (e.g., 'storage.buckets.list'). A value of '*' matches all permissions, and a verb part of '*' (e.g., * 'storage.buckets.*') matches all verbs. */ permissions?: string[]; } interface TargetConfiguration { /** The configuration to use for this deployment. */ config?: ConfigFile; /** * Specifies any files to import for this configuration. This can be used to import templates or other files. For example, you might import a text file in * order to use the file in a template. */ imports?: ImportFile[]; } interface TestPermissionsRequest { /** The set of permissions to check for the 'resource'. Permissions with wildcards (such as '*' or 'storage.*') are not allowed. */ permissions?: string[]; } interface TestPermissionsResponse { /** A subset of `TestPermissionsRequest.permissions` that the caller is allowed. */ permissions?: string[]; } interface Type { /** Output only. Unique identifier for the resource; defined by the server. */ id?: string; /** Output only. Timestamp when the type was created, in RFC3339 text format. */ insertTime?: string; /** Name of the type. */ name?: string; /** Output only. The Operation that most recently ran, or is currently running, on this type. */ operation?: Operation; /** Output only. Self link for the type. */ selfLink?: string; } interface TypesListResponse { /** A token used to continue a truncated list request. */ nextPageToken?: string; /** Output only. A list of resource types supported by Deployment Manager. */ types?: Type[]; } interface DeploymentsResource { /** Cancels and removes the preview currently associated with the deployment. */ cancelPreview(request: { /** Data format for the response. */ alt?: string; /** The name of the deployment for this request. */ deployment: string; /** Selector specifying which fields to include in a partial response. */ fields?: string; /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */ key?: string; /** OAuth 2.0 token for the current user. */ oauth_token?: string; /** Returns response with indentations and line breaks. */ prettyPrint?: boolean; /** The project ID for this request. */ project: string; /** * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. * Overrides userIp if both are provided. */ quotaUser?: string; /** IP address of the site where the request originates. Use this if you want to enforce per-user limits. */ userIp?: string; }): Request; /** Deletes a deployment and all of the resources in the deployment. */ delete(request: { /** Data format for the response. */ alt?: string; /** Sets the policy to use for deleting resources. */ deletePolicy?: string; /** The name of the deployment for this request. */ deployment: string; /** Selector specifying which fields to include in a partial response. */ fields?: string; /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */ key?: string; /** OAuth 2.0 token for the current user. */ oauth_token?: string; /** Returns response with indentations and line breaks. */ prettyPrint?: boolean; /** The project ID for this request. */ project: string; /** * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. * Overrides userIp if both are provided. */ quotaUser?: string; /** IP address of the site where the request originates. Use this if you want to enforce per-user limits. */ userIp?: string; }): Request; /** Gets information about a specific deployment. */ get(request: { /** Data format for the response. */ alt?: string; /** The name of the deployment for this request. */ deployment: string; /** Selector specifying which fields to include in a partial response. */ fields?: string; /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */ key?: string; /** OAuth 2.0 token for the current user. */ oauth_token?: string; /** Returns response with indentations and line breaks. */ prettyPrint?: boolean; /** The project ID for this request. */ project: string; /** * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. * Overrides userIp if both are provided. */ quotaUser?: string; /** IP address of the site where the request originates. Use this if you want to enforce per-user limits. */ userIp?: string; }): Request; /** Gets the access control policy for a resource. May be empty if no such policy or resource exists. */ getIamPolicy(request: { /** Data format for the response. */ alt?: string; /** Selector specifying which fields to include in a partial response. */ fields?: string; /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */ key?: string; /** OAuth 2.0 token for the current user. */ oauth_token?: string; /** Returns response with indentations and line breaks. */ prettyPrint?: boolean; /** Project ID for this request. */ project: string; /** * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. * Overrides userIp if both are provided. */ quotaUser?: string; /** Name of the resource for this request. */ resource: string; /** IP address of the site where the request originates. Use this if you want to enforce per-user limits. */ userIp?: string; }): Request; /** Creates a deployment and all of the resources described by the deployment manifest. */ insert(request: { /** Data format for the response. */ alt?: string; /** Selector specifying which fields to include in a partial response. */ fields?: string; /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */ key?: string; /** OAuth 2.0 token for the current user. */ oauth_token?: string; /** Returns response with indentations and line breaks. */ prettyPrint?: boolean; /** * If set to true, creates a deployment and creates "shell" resources but does not actually instantiate these resources. This allows you to preview what * your deployment looks like. After previewing a deployment, you can deploy your resources by making a request with the update() method or you can use * the cancelPreview() method to cancel the preview altogether. Note that the deployment will still exist after you cancel the preview and you must * separately delete this deployment if you want to remove it. */ preview?: boolean; /** The project ID for this request. */ project: string; /** * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. * Overrides userIp if both are provided. */ quotaUser?: string; /** IP address of the site where the request originates. Use this if you want to enforce per-user limits. */ userIp?: string; }): Request; /** Lists all deployments for a given project. */ list(request: { /** Data format for the response. */ alt?: string; /** Selector specifying which fields to include in a partial response. */ fields?: string; /** * Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string. * * The field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string * must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of * field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The * literal value must match the entire field. * * For example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance. * * You can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering * on nested fields to take advantage of labels to organize and search for results based on label values. * * To filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq * us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters. */ filter?: string; /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */ key?: string; /** * The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a * nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) */ maxResults?: number; /** OAuth 2.0 token for the current user. */ oauth_token?: string; /** * Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. * * You can also sort results in descending order based on the creation timestamp using orderBy="creationTimestamp desc". This sorts results based on the * creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation * is returned first. * * Currently, only sorting by name or creationTimestamp desc is supported. */ orderBy?: string; /** Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results. */ pageToken?: string; /** Returns response with indentations and line breaks. */ prettyPrint?: boolean; /** The project ID for this request. */ project: string; /** * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. * Overrides userIp if both are provided. */ quotaUser?: string; /** IP address of the site where the request originates. Use this if you want to enforce per-user limits. */ userIp?: string; }): Request; /** Updates a deployment and all of the resources described by the deployment manifest. This method supports patch semantics. */ patch(request: { /** Data format for the response. */ alt?: string; /** Sets the policy to use for creating new resources. */ createPolicy?: string; /** Sets the policy to use for deleting resources. */ deletePolicy?: string; /** The name of the deployment for this request. */ deployment: string; /** Selector specifying which fields to include in a partial response. */ fields?: string; /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */ key?: string; /** OAuth 2.0 token for the current user. */ oauth_token?: string; /** Returns response with indentations and line breaks. */ prettyPrint?: boolean; /** * If set to true, updates the deployment and creates and updates the "shell" resources but does not actually alter or instantiate these resources. This * allows you to preview what your deployment will look like. You can use this intent to preview how an update would affect your deployment. You must * provide a target.config with a configuration if this is set to true. After previewing a deployment, you can deploy your resources by making a request * with the update() or you can cancelPreview() to remove the preview altogether. Note that the deployment will still exist after you cancel the preview * and you must separately delete this deployment if you want to remove it. */ preview?: boolean; /** The project ID for this request. */ project: string; /** * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. * Overrides userIp if both are provided. */ quotaUser?: string; /** IP address of the site where the request originates. Use this if you want to enforce per-user limits. */ userIp?: string; }): Request; /** Sets the access control policy on the specified resource. Replaces any existing policy. */ setIamPolicy(request: { /** Data format for the response. */ alt?: string; /** Selector specifying which fields to include in a partial response. */ fields?: string; /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */ key?: string; /** OAuth 2.0 token for the current user. */ oauth_token?: string; /** Returns response with indentations and line breaks. */ prettyPrint?: boolean; /** Project ID for this request. */ project: string; /** * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. * Overrides userIp if both are provided. */ quotaUser?: string; /** Name of the resource for this request. */ resource: string; /** IP address of the site where the request originates. Use this if you want to enforce per-user limits. */ userIp?: string; }): Request; /** Stops an ongoing operation. This does not roll back any work that has already been completed, but prevents any new work from being started. */ stop(request: { /** Data format for the response. */ alt?: string; /** The name of the deployment for this request. */ deployment: string; /** Selector specifying which fields to include in a partial response. */ fields?: string; /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */ key?: string; /** OAuth 2.0 token for the current user. */ oauth_token?: string; /** Returns response with indentations and line breaks. */ prettyPrint?: boolean; /** The project ID for this request. */ project: string; /** * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. * Overrides userIp if both are provided. */ quotaUser?: string; /** IP address of the site where the request originates. Use this if you want to enforce per-user limits. */ userIp?: string; }): Request; /** Returns permissions that a caller has on the specified resource. */ testIamPermissions(request: { /** Data format for the response. */ alt?: string; /** Selector specifying which fields to include in a partial response. */ fields?: string; /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */ key?: string; /** OAuth 2.0 token for the current user. */ oauth_token?: string; /** Returns response with indentations and line breaks. */ prettyPrint?: boolean; /** Project ID for this request. */ project: string; /** * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. * Overrides userIp if both are provided. */ quotaUser?: string; /** Name of the resource for this request. */ resource: string; /** IP address of the site where the request originates. Use this if you want to enforce per-user limits. */ userIp?: string; }): Request; /** Updates a deployment and all of the resources described by the deployment manifest. */ update(request: { /** Data format for the response. */ alt?: string; /** Sets the policy to use for creating new resources. */ createPolicy?: string; /** Sets the policy to use for deleting resources. */ deletePolicy?: string; /** The name of the deployment for this request. */ deployment: string; /** Selector specifying which fields to include in a partial response. */ fields?: string; /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */ key?: string; /** OAuth 2.0 token for the current user. */ oauth_token?: string; /** Returns response with indentations and line breaks. */ prettyPrint?: boolean; /** * If set to true, updates the deployment and creates and updates the "shell" resources but does not actually alter or instantiate these resources. This * allows you to preview what your deployment will look like. You can use this intent to preview how an update would affect your deployment. You must * provide a target.config with a configuration if this is set to true. After previewing a deployment, you can deploy your resources by making a request * with the update() or you can cancelPreview() to remove the preview altogether. Note that the deployment will still exist after you cancel the preview * and you must separately delete this deployment if you want to remove it. */ preview?: boolean; /** The project ID for this request. */ project: string; /** * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. * Overrides userIp if both are provided. */ quotaUser?: string; /** IP address of the site where the request originates. Use this if you want to enforce per-user limits. */ userIp?: string; }): Request; } interface ManifestsResource { /** Gets information about a specific manifest. */ get(request: { /** Data format for the response. */ alt?: string; /** The name of the deployment for this request. */ deployment: string; /** Selector specifying which fields to include in a partial response. */ fields?: string; /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */ key?: string; /** The name of the manifest for this request. */ manifest: string; /** OAuth 2.0 token for the current user. */ oauth_token?: string; /** Returns response with indentations and line breaks. */ prettyPrint?: boolean; /** The project ID for this request. */ project: string; /** * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. * Overrides userIp if both are provided. */ quotaUser?: string; /** IP address of the site where the request originates. Use this if you want to enforce per-user limits. */ userIp?: string; }): Request; /** Lists all manifests for a given deployment. */ list(request: { /** Data format for the response. */ alt?: string; /** The name of the deployment for this request. */ deployment: string; /** Selector specifying which fields to include in a partial response. */ fields?: string; /** * Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string. * * The field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string * must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of * field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The * literal value must match the entire field. * * For example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance. * * You can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering * on nested fields to take advantage of labels to organize and search for results based on label values. * * To filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq * us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters. */ filter?: string; /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */ key?: string; /** * The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a * nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) */ maxResults?: number; /** OAuth 2.0 token for the current user. */ oauth_token?: string; /** * Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. * * You can also sort results in descending order based on the creation timestamp using orderBy="creationTimestamp desc". This sorts results based on the * creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation * is returned first. * * Currently, only sorting by name or creationTimestamp desc is supported. */ orderBy?: string; /** Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results. */ pageToken?: string; /** Returns response with indentations and line breaks. */ prettyPrint?: boolean; /** The project ID for this request. */ project: string; /** * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. * Overrides userIp if both are provided. */ quotaUser?: string; /** IP address of the site where the request originates. Use this if you want to enforce per-user limits. */ userIp?: string; }): Request; } interface OperationsResource { /** Gets information about a specific operation. */ get(request: { /** Data format for the response. */ alt?: string; /** Selector specifying which fields to include in a partial response. */ fields?: string; /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */ key?: string; /** OAuth 2.0 token for the current user. */ oauth_token?: string; /** The name of the operation for this request. */ operation: string; /** Returns response with indentations and line breaks. */ prettyPrint?: boolean; /** The project ID for this request. */ project: string; /** * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. * Overrides userIp if both are provided. */ quotaUser?: string; /** IP address of the site where the request originates. Use this if you want to enforce per-user limits. */ userIp?: string; }): Request; /** Lists all operations for a project. */ list(request: { /** Data format for the response. */ alt?: string; /** Selector specifying which fields to include in a partial response. */ fields?: string; /** * Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string. * * The field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string * must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of * field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The * literal value must match the entire field. * * For example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance. * * You can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering * on nested fields to take advantage of labels to organize and search for results based on label values. * * To filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq * us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters. */ filter?: string; /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */ key?: string; /** * The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a * nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) */ maxResults?: number; /** OAuth 2.0 token for the current user. */ oauth_token?: string; /** * Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. * * You can also sort results in descending order based on the creation timestamp using orderBy="creationTimestamp desc". This sorts results based on the * creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation * is returned first. * * Currently, only sorting by name or creationTimestamp desc is supported. */ orderBy?: string; /** Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results. */ pageToken?: string; /** Returns response with indentations and line breaks. */ prettyPrint?: boolean; /** The project ID for this request. */ project: string; /** * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. * Overrides userIp if both are provided. */ quotaUser?: string; /** IP address of the site where the request originates. Use this if you want to enforce per-user limits. */ userIp?: string; }): Request; } interface ResourcesResource { /** Gets information about a single resource. */ get(request: { /** Data format for the response. */ alt?: string; /** The name of the deployment for this request. */ deployment: string; /** Selector specifying which fields to include in a partial response. */ fields?: string; /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */ key?: string; /** OAuth 2.0 token for the current user. */ oauth_token?: string; /** Returns response with indentations and line breaks. */ prettyPrint?: boolean; /** The project ID for this request. */ project: string; /** * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. * Overrides userIp if both are provided. */ quotaUser?: string; /** The name of the resource for this request. */ resource: string; /** IP address of the site where the request originates. Use this if you want to enforce per-user limits. */ userIp?: string; }): Request; /** Lists all resources in a given deployment. */ list(request: { /** Data format for the response. */ alt?: string; /** The name of the deployment for this request. */ deployment: string; /** Selector specifying which fields to include in a partial response. */ fields?: string; /** * Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string. * * The field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string * must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of * field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The * literal value must match the entire field. * * For example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance. * * You can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering * on nested fields to take advantage of labels to organize and search for results based on label values. * * To filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq * us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters. */ filter?: string; /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */ key?: string; /** * The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a * nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) */ maxResults?: number; /** OAuth 2.0 token for the current user. */ oauth_token?: string; /** * Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. * * You can also sort results in descending order based on the creation timestamp using orderBy="creationTimestamp desc". This sorts results based on the * creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation * is returned first. * * Currently, only sorting by name or creationTimestamp desc is supported. */ orderBy?: string; /** Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results. */ pageToken?: string; /** Returns response with indentations and line breaks. */ prettyPrint?: boolean; /** The project ID for this request. */ project: string; /** * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. * Overrides userIp if both are provided. */ quotaUser?: string; /** IP address of the site where the request originates. Use this if you want to enforce per-user limits. */ userIp?: string; }): Request; } interface TypesResource { /** Lists all resource types for Deployment Manager. */ list(request: { /** Data format for the response. */ alt?: string; /** Selector specifying which fields to include in a partial response. */ fields?: string; /** * Sets a filter {expression} for filtering listed resources. Your {expression} must be in the format: field_name comparison_string literal_string. * * The field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string * must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of * field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The * literal value must match the entire field. * * For example, to filter for instances that do not have a name of example-instance, you would use name ne example-instance. * * You can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering * on nested fields to take advantage of labels to organize and search for results based on label values. * * To filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq * us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters. */ filter?: string; /** API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token. */ key?: string; /** * The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a * nextPageToken that can be used to get the next page of results in subsequent list requests. Acceptable values are 0 to 500, inclusive. (Default: 500) */ maxResults?: number; /** OAuth 2.0 token for the current user. */ oauth_token?: string; /** * Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name. * * You can also sort results in descending order based on the creation timestamp using orderBy="creationTimestamp desc". This sorts results based on the * creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation * is returned first. * * Currently, only sorting by name or creationTimestamp desc is supported. */ orderBy?: string; /** Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results. */ pageToken?: string; /** Returns response with indentations and line breaks. */ prettyPrint?: boolean; /** The project ID for this request. */ project: string; /** * Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. * Overrides userIp if both are provided. */ quotaUser?: string; /** IP address of the site where the request originates. Use this if you want to enforce per-user limits. */ userIp?: string; }): Request; } } }