UNPKG

googleapis

Version:
1,136 lines (1,135 loc) 39.5 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'; /** * Google Cloud Datastore API * * Accesses the schemaless NoSQL database to provide fully managed, robust, * scalable storage for your application. * * @example * const google = require('googleapis'); * const datastore = google.datastore('v1beta3'); * * @namespace datastore * @type {Function} * @version v1beta3 * @variation v1beta3 * @param {object=} options Options for Datastore */ export declare class Datastore { _options: GlobalOptions; google: GoogleApis; root: this; projects: Resource$Projects; constructor(options: GlobalOptions, google: GoogleApis); getRoot(): this; } /** * The request for Datastore.AllocateIds. */ export interface Schema$AllocateIdsRequest { /** * A list of keys with incomplete key paths for which to allocate IDs. No key * may be reserved/read-only. */ keys: Schema$Key[]; } /** * The response for Datastore.AllocateIds. */ export interface Schema$AllocateIdsResponse { /** * The keys specified in the request (in the same order), each with its key * path completed with a newly allocated ID. */ keys: Schema$Key[]; } /** * An array value. */ export interface Schema$ArrayValue { /** * Values in the array. The order of this array may not be preserved if it * contains a mix of indexed and unindexed values. */ values: Schema$Value[]; } /** * The request for Datastore.BeginTransaction. */ export interface Schema$BeginTransactionRequest { /** * Options for a new transaction. */ transactionOptions: Schema$TransactionOptions; } /** * The response for Datastore.BeginTransaction. */ export interface Schema$BeginTransactionResponse { /** * The transaction identifier (always present). */ transaction: string; } /** * The request for Datastore.Commit. */ export interface Schema$CommitRequest { /** * The type of commit to perform. Defaults to `TRANSACTIONAL`. */ mode: string; /** * The mutations to perform. When mode is `TRANSACTIONAL`, mutations * affecting a single entity are applied in order. The following sequences of * mutations affecting a single entity are not permitted in a single `Commit` * request: - `insert` followed by `insert` - `update` followed by `insert` - * `upsert` followed by `insert` - `delete` followed by `update` When mode is * `NON_TRANSACTIONAL`, no two mutations may affect a single entity. */ mutations: Schema$Mutation[]; /** * The identifier of the transaction associated with the commit. A transaction * identifier is returned by a call to Datastore.BeginTransaction. */ transaction: string; } /** * The response for Datastore.Commit. */ export interface Schema$CommitResponse { /** * The number of index entries updated during the commit, or zero if none were * updated. */ indexUpdates: number; /** * The result of performing the mutations. The i-th mutation result * corresponds to the i-th mutation in the request. */ mutationResults: Schema$MutationResult[]; } /** * A filter that merges multiple other filters using the given operator. */ export interface Schema$CompositeFilter { /** * The list of filters to combine. Must contain at least one filter. */ filters: Schema$Filter[]; /** * The operator for combining multiple filters. */ op: string; } /** * A Datastore data object. An entity is limited to 1 megabyte when stored. * That _roughly_ corresponds to a limit of 1 megabyte for the serialized form * of this message. */ export interface Schema$Entity { /** * The entity&#39;s key. An entity must have a key, unless otherwise * documented (for example, an entity in `Value.entity_value` may have no * key). An entity&#39;s kind is its key path&#39;s last element&#39;s kind, * or null if it has no key. */ key: Schema$Key; /** * The entity&#39;s properties. The map&#39;s keys are property names. A * property name matching regex `__.*__` is reserved. A reserved property name * is forbidden in certain documented contexts. The name must not contain more * than 500 characters. The name cannot be `&quot;&quot;`. */ properties: any; } /** * The result of fetching an entity from Datastore. */ export interface Schema$EntityResult { /** * A cursor that points to the position after the result entity. Set only when * the `EntityResult` is part of a `QueryResultBatch` message. */ cursor: string; /** * The resulting entity. */ entity: Schema$Entity; /** * The version of the entity, a strictly positive number that monotonically * increases with changes to the entity. This field is set for `FULL` entity * results. For missing entities in `LookupResponse`, this is the version of * the snapshot that was used to look up the entity, and it is always set * except for eventually consistent reads. */ version: string; } /** * A holder for any type of filter. */ export interface Schema$Filter { /** * A composite filter. */ compositeFilter: Schema$CompositeFilter; /** * A filter on a property. */ propertyFilter: Schema$PropertyFilter; } /** * Metadata common to all Datastore Admin operations. */ export interface Schema$GoogleDatastoreAdminV1beta1CommonMetadata { /** * The time the operation ended, either successfully or otherwise. */ endTime: string; /** * The client-assigned labels which were provided when the operation was * created. May also include additional labels. */ labels: any; /** * The type of the operation. Can be used as a filter in * ListOperationsRequest. */ operationType: string; /** * The time that work began on the operation. */ startTime: string; /** * The current state of the Operation. */ state: string; } /** * Identifies a subset of entities in a project. This is specified as * combinations of kinds and namespaces (either or both of which may be all, as * described in the following examples). Example usage: Entire project: * kinds=[], namespace_ids=[] Kinds Foo and Bar in all namespaces: * kinds=[&#39;Foo&#39;, &#39;Bar&#39;], namespace_ids=[] Kinds Foo and Bar * only in the default namespace: kinds=[&#39;Foo&#39;, &#39;Bar&#39;], * namespace_ids=[&#39;&#39;] Kinds Foo and Bar in both the default and Baz * namespaces: kinds=[&#39;Foo&#39;, &#39;Bar&#39;], * namespace_ids=[&#39;&#39;, &#39;Baz&#39;] The entire Baz namespace: * kinds=[], namespace_ids=[&#39;Baz&#39;] */ export interface Schema$GoogleDatastoreAdminV1beta1EntityFilter { /** * If empty, then this represents all kinds. */ kinds: string[]; /** * An empty list represents all namespaces. This is the preferred usage for * projects that don&#39;t use namespaces. An empty string element represents * the default namespace. This should be used if the project has data in * non-default namespaces, but doesn&#39;t want to include them. Each * namespace in this list must be unique. */ namespaceIds: string[]; } /** * Metadata for ExportEntities operations. */ export interface Schema$GoogleDatastoreAdminV1beta1ExportEntitiesMetadata { /** * Metadata common to all Datastore Admin operations. */ common: Schema$GoogleDatastoreAdminV1beta1CommonMetadata; /** * Description of which entities are being exported. */ entityFilter: Schema$GoogleDatastoreAdminV1beta1EntityFilter; /** * Location for the export metadata and data files. This will be the same * value as the * google.datastore.admin.v1beta1.ExportEntitiesRequest.output_url_prefix * field. The final output location is provided in * google.datastore.admin.v1beta1.ExportEntitiesResponse.output_url. */ outputUrlPrefix: string; /** * An estimate of the number of bytes processed. */ progressBytes: Schema$GoogleDatastoreAdminV1beta1Progress; /** * An estimate of the number of entities processed. */ progressEntities: Schema$GoogleDatastoreAdminV1beta1Progress; } /** * The response for * google.datastore.admin.v1beta1.DatastoreAdmin.ExportEntities. */ export interface Schema$GoogleDatastoreAdminV1beta1ExportEntitiesResponse { /** * Location of the output metadata file. This can be used to begin an import * into Cloud Datastore (this project or another project). See * google.datastore.admin.v1beta1.ImportEntitiesRequest.input_url. Only * present if the operation completed successfully. */ outputUrl: string; } /** * Metadata for ImportEntities operations. */ export interface Schema$GoogleDatastoreAdminV1beta1ImportEntitiesMetadata { /** * Metadata common to all Datastore Admin operations. */ common: Schema$GoogleDatastoreAdminV1beta1CommonMetadata; /** * Description of which entities are being imported. */ entityFilter: Schema$GoogleDatastoreAdminV1beta1EntityFilter; /** * The location of the import metadata file. This will be the same value as * the google.datastore.admin.v1beta1.ExportEntitiesResponse.output_url field. */ inputUrl: string; /** * An estimate of the number of bytes processed. */ progressBytes: Schema$GoogleDatastoreAdminV1beta1Progress; /** * An estimate of the number of entities processed. */ progressEntities: Schema$GoogleDatastoreAdminV1beta1Progress; } /** * Measures the progress of a particular metric. */ export interface Schema$GoogleDatastoreAdminV1beta1Progress { /** * The amount of work that has been completed. Note that this may be greater * than work_estimated. */ workCompleted: string; /** * An estimate of how much work needs to be performed. May be zero if the work * estimate is unavailable. */ workEstimated: string; } /** * Metadata common to all Datastore Admin operations. */ export interface Schema$GoogleDatastoreAdminV1CommonMetadata { /** * The time the operation ended, either successfully or otherwise. */ endTime: string; /** * The client-assigned labels which were provided when the operation was * created. May also include additional labels. */ labels: any; /** * The type of the operation. Can be used as a filter in * ListOperationsRequest. */ operationType: string; /** * The time that work began on the operation. */ startTime: string; /** * The current state of the Operation. */ state: string; } /** * Identifies a subset of entities in a project. This is specified as * combinations of kinds and namespaces (either or both of which may be all, as * described in the following examples). Example usage: Entire project: * kinds=[], namespace_ids=[] Kinds Foo and Bar in all namespaces: * kinds=[&#39;Foo&#39;, &#39;Bar&#39;], namespace_ids=[] Kinds Foo and Bar * only in the default namespace: kinds=[&#39;Foo&#39;, &#39;Bar&#39;], * namespace_ids=[&#39;&#39;] Kinds Foo and Bar in both the default and Baz * namespaces: kinds=[&#39;Foo&#39;, &#39;Bar&#39;], * namespace_ids=[&#39;&#39;, &#39;Baz&#39;] The entire Baz namespace: * kinds=[], namespace_ids=[&#39;Baz&#39;] */ export interface Schema$GoogleDatastoreAdminV1EntityFilter { /** * If empty, then this represents all kinds. */ kinds: string[]; /** * An empty list represents all namespaces. This is the preferred usage for * projects that don&#39;t use namespaces. An empty string element represents * the default namespace. This should be used if the project has data in * non-default namespaces, but doesn&#39;t want to include them. Each * namespace in this list must be unique. */ namespaceIds: string[]; } /** * Metadata for ExportEntities operations. */ export interface Schema$GoogleDatastoreAdminV1ExportEntitiesMetadata { /** * Metadata common to all Datastore Admin operations. */ common: Schema$GoogleDatastoreAdminV1CommonMetadata; /** * Description of which entities are being exported. */ entityFilter: Schema$GoogleDatastoreAdminV1EntityFilter; /** * Location for the export metadata and data files. This will be the same * value as the * google.datastore.admin.v1.ExportEntitiesRequest.output_url_prefix field. * The final output location is provided in * google.datastore.admin.v1.ExportEntitiesResponse.output_url. */ outputUrlPrefix: string; /** * An estimate of the number of bytes processed. */ progressBytes: Schema$GoogleDatastoreAdminV1Progress; /** * An estimate of the number of entities processed. */ progressEntities: Schema$GoogleDatastoreAdminV1Progress; } /** * The response for google.datastore.admin.v1.DatastoreAdmin.ExportEntities. */ export interface Schema$GoogleDatastoreAdminV1ExportEntitiesResponse { /** * Location of the output metadata file. This can be used to begin an import * into Cloud Datastore (this project or another project). See * google.datastore.admin.v1.ImportEntitiesRequest.input_url. Only present if * the operation completed successfully. */ outputUrl: string; } /** * Metadata for ImportEntities operations. */ export interface Schema$GoogleDatastoreAdminV1ImportEntitiesMetadata { /** * Metadata common to all Datastore Admin operations. */ common: Schema$GoogleDatastoreAdminV1CommonMetadata; /** * Description of which entities are being imported. */ entityFilter: Schema$GoogleDatastoreAdminV1EntityFilter; /** * The location of the import metadata file. This will be the same value as * the google.datastore.admin.v1.ExportEntitiesResponse.output_url field. */ inputUrl: string; /** * An estimate of the number of bytes processed. */ progressBytes: Schema$GoogleDatastoreAdminV1Progress; /** * An estimate of the number of entities processed. */ progressEntities: Schema$GoogleDatastoreAdminV1Progress; } /** * Measures the progress of a particular metric. */ export interface Schema$GoogleDatastoreAdminV1Progress { /** * The amount of work that has been completed. Note that this may be greater * than work_estimated. */ workCompleted: string; /** * An estimate of how much work needs to be performed. May be zero if the work * estimate is unavailable. */ workEstimated: string; } /** * A [GQL * query](https://cloud.google.com/datastore/docs/apis/gql/gql_reference). */ export interface Schema$GqlQuery { /** * When false, the query string must not contain any literals and instead must * bind all values. For example, `SELECT * FROM Kind WHERE a = &#39;string * literal&#39;` is not allowed, while `SELECT * FROM Kind WHERE a = @value` * is. */ allowLiterals: boolean; /** * For each non-reserved named binding site in the query string, there must be * a named parameter with that name, but not necessarily the inverse. Key * must match regex `A-Za-z_$*`, must not match regex `__.*__`, and must not * be `&quot;&quot;`. */ namedBindings: any; /** * Numbered binding site @1 references the first numbered parameter, * effectively using 1-based indexing, rather than the usual 0. For each * binding site numbered i in `query_string`, there must be an i-th numbered * parameter. The inverse must also be true. */ positionalBindings: Schema$GqlQueryParameter[]; /** * A string of the format described * [here](https://cloud.google.com/datastore/docs/apis/gql/gql_reference). */ queryString: string; } /** * A binding parameter for a GQL query. */ export interface Schema$GqlQueryParameter { /** * A query cursor. Query cursors are returned in query result batches. */ cursor: string; /** * A value parameter. */ value: Schema$Value; } /** * A unique identifier for an entity. If a key&#39;s partition ID or any of its * path kinds or names are reserved/read-only, the key is reserved/read-only. A * reserved/read-only key is forbidden in certain documented contexts. */ export interface Schema$Key { /** * Entities are partitioned into subsets, currently identified by a project ID * and namespace ID. Queries are scoped to a single partition. */ partitionId: Schema$PartitionId; /** * The entity path. An entity path consists of one or more elements composed * of a kind and a string or numerical identifier, which identify entities. * The first element identifies a _root entity_, the second element identifies * a _child_ of the root entity, the third element identifies a child of the * second entity, and so forth. The entities identified by all prefixes of the * path are called the element&#39;s _ancestors_. An entity path is always * fully complete: *all* of the entity&#39;s ancestors are required to be in * the path along with the entity identifier itself. The only exception is * that in some documented cases, the identifier in the last path element (for * the entity) itself may be omitted. For example, the last path element of * the key of `Mutation.insert` may have no identifier. A path can never be * empty, and a path can have at most 100 elements. */ path: Schema$PathElement[]; } /** * A representation of a kind. */ export interface Schema$KindExpression { /** * The name of the kind. */ name: string; } /** * An object representing a latitude/longitude pair. This is expressed as a pair * of doubles representing degrees latitude and degrees longitude. Unless * specified otherwise, this must conform to the &lt;a * href=&quot;http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf&quot;&gt;WGS84 * standard&lt;/a&gt;. Values must be within normalized ranges. */ export interface Schema$LatLng { /** * The latitude in degrees. It must be in the range [-90.0, +90.0]. */ latitude: number; /** * The longitude in degrees. It must be in the range [-180.0, +180.0]. */ longitude: number; } /** * The request for Datastore.Lookup. */ export interface Schema$LookupRequest { /** * Keys of entities to look up. */ keys: Schema$Key[]; /** * The options for this lookup request. */ readOptions: Schema$ReadOptions; } /** * The response for Datastore.Lookup. */ export interface Schema$LookupResponse { /** * A list of keys that were not looked up due to resource constraints. The * order of results in this field is undefined and has no relation to the * order of the keys in the input. */ deferred: Schema$Key[]; /** * Entities found as `ResultType.FULL` entities. The order of results in this * field is undefined and has no relation to the order of the keys in the * input. */ found: Schema$EntityResult[]; /** * Entities not found as `ResultType.KEY_ONLY` entities. The order of results * in this field is undefined and has no relation to the order of the keys in * the input. */ missing: Schema$EntityResult[]; } /** * A mutation to apply to an entity. */ export interface Schema$Mutation { /** * The version of the entity that this mutation is being applied to. If this * does not match the current version on the server, the mutation conflicts. */ baseVersion: string; /** * The key of the entity to delete. The entity may or may not already exist. * Must have a complete key path and must not be reserved/read-only. */ delete: Schema$Key; /** * The entity to insert. The entity must not already exist. The entity * key&#39;s final path element may be incomplete. */ insert: Schema$Entity; /** * The entity to update. The entity must already exist. Must have a complete * key path. */ update: Schema$Entity; /** * The entity to upsert. The entity may or may not already exist. The entity * key&#39;s final path element may be incomplete. */ upsert: Schema$Entity; } /** * The result of applying a mutation. */ export interface Schema$MutationResult { /** * Whether a conflict was detected for this mutation. Always false when a * conflict detection strategy field is not set in the mutation. */ conflictDetected: boolean; /** * The automatically allocated key. Set only when the mutation allocated a * key. */ key: Schema$Key; /** * The version of the entity on the server after processing the mutation. If * the mutation doesn&#39;t change anything on the server, then the version * will be the version of the current entity or, if no entity is present, a * version that is strictly greater than the version of any previous entity * and less than the version of any possible future entity. */ version: string; } /** * A partition ID identifies a grouping of entities. The grouping is always by * project and namespace, however the namespace ID may be empty. A partition ID * contains several dimensions: project ID and namespace ID. Partition * dimensions: - May be `&quot;&quot;`. - Must be valid UTF-8 bytes. - Must * have values that match regex `[A-Za-z\d\.\-_]{1,100}` If the value of any * dimension matches regex `__.*__`, the partition is reserved/read-only. A * reserved/read-only partition ID is forbidden in certain documented contexts. * Foreign partition IDs (in which the project ID does not match the context * project ID ) are discouraged. Reads and writes of foreign partition IDs may * fail if the project is not in an active state. */ export interface Schema$PartitionId { /** * If not empty, the ID of the namespace to which the entities belong. */ namespaceId: string; /** * The ID of the project to which the entities belong. */ projectId: string; } /** * A (kind, ID/name) pair used to construct a key path. If either name or ID is * set, the element is complete. If neither is set, the element is incomplete. */ export interface Schema$PathElement { /** * The auto-allocated ID of the entity. Never equal to zero. Values less than * zero are discouraged and may not be supported in the future. */ id: string; /** * The kind of the entity. A kind matching regex `__.*__` is * reserved/read-only. A kind must not contain more than 1500 bytes when UTF-8 * encoded. Cannot be `&quot;&quot;`. */ kind: string; /** * The name of the entity. A name matching regex `__.*__` is * reserved/read-only. A name must not be more than 1500 bytes when UTF-8 * encoded. Cannot be `&quot;&quot;`. */ name: string; } /** * A representation of a property in a projection. */ export interface Schema$Projection { /** * The property to project. */ property: Schema$PropertyReference; } /** * A filter on a specific property. */ export interface Schema$PropertyFilter { /** * The operator to filter by. */ op: string; /** * The property to filter by. */ property: Schema$PropertyReference; /** * The value to compare the property to. */ value: Schema$Value; } /** * The desired order for a specific property. */ export interface Schema$PropertyOrder { /** * The direction to order by. Defaults to `ASCENDING`. */ direction: string; /** * The property to order by. */ property: Schema$PropertyReference; } /** * A reference to a property relative to the kind expressions. */ export interface Schema$PropertyReference { /** * The name of the property. If name includes &quot;.&quot;s, it may be * interpreted as a property name path. */ name: string; } /** * A query for entities. */ export interface Schema$Query { /** * The properties to make distinct. The query results will contain the first * result for each distinct combination of values for the given properties (if * empty, all results are returned). */ distinctOn: Schema$PropertyReference[]; /** * An ending point for the query results. Query cursors are returned in query * result batches and [can only be used to limit the same * query](https://cloud.google.com/datastore/docs/concepts/queries#cursors_limits_and_offsets). */ endCursor: string; /** * The filter to apply. */ filter: Schema$Filter; /** * The kinds to query (if empty, returns entities of all kinds). Currently at * most 1 kind may be specified. */ kind: Schema$KindExpression[]; /** * The maximum number of results to return. Applies after all other * constraints. Optional. Unspecified is interpreted as no limit. Must be * &gt;= 0 if specified. */ limit: number; /** * The number of results to skip. Applies before limit, but after all other * constraints. Optional. Must be &gt;= 0 if specified. */ offset: number; /** * The order to apply to the query results (if empty, order is unspecified). */ order: Schema$PropertyOrder[]; /** * The projection to return. Defaults to returning all properties. */ projection: Schema$Projection[]; /** * A starting point for the query results. Query cursors are returned in query * result batches and [can only be used to continue the same * query](https://cloud.google.com/datastore/docs/concepts/queries#cursors_limits_and_offsets). */ startCursor: string; } /** * A batch of results produced by a query. */ export interface Schema$QueryResultBatch { /** * A cursor that points to the position after the last result in the batch. */ endCursor: string; /** * The results for this batch. */ entityResults: Schema$EntityResult[]; /** * The result type for every entity in `entity_results`. */ entityResultType: string; /** * The state of the query after the current batch. */ moreResults: string; /** * A cursor that points to the position after the last skipped result. Will be * set when `skipped_results` != 0. */ skippedCursor: string; /** * The number of results skipped, typically because of an offset. */ skippedResults: number; /** * The version number of the snapshot this batch was returned from. This * applies to the range of results from the query&#39;s `start_cursor` (or the * beginning of the query if no cursor was given) to this batch&#39;s * `end_cursor` (not the query&#39;s `end_cursor`). In a single transaction, * subsequent query result batches for the same query can have a greater * snapshot version number. Each batch&#39;s snapshot version is valid for all * preceding batches. The value will be zero for eventually consistent * queries. */ snapshotVersion: string; } /** * Options specific to read-only transactions. */ export interface Schema$ReadOnly { } /** * The options shared by read requests. */ export interface Schema$ReadOptions { /** * The non-transactional read consistency to use. Cannot be set to `STRONG` * for global queries. */ readConsistency: string; /** * The identifier of the transaction in which to read. A transaction * identifier is returned by a call to Datastore.BeginTransaction. */ transaction: string; } /** * Options specific to read / write transactions. */ export interface Schema$ReadWrite { /** * The transaction identifier of the transaction being retried. */ previousTransaction: string; } /** * The request for Datastore.ReserveIds. */ export interface Schema$ReserveIdsRequest { /** * If not empty, the ID of the database against which to make the request. */ databaseId: string; /** * A list of keys with complete key paths whose numeric IDs should not be * auto-allocated. */ keys: Schema$Key[]; } /** * The response for Datastore.ReserveIds. */ export interface Schema$ReserveIdsResponse { } /** * The request for Datastore.Rollback. */ export interface Schema$RollbackRequest { /** * The transaction identifier, returned by a call to * Datastore.BeginTransaction. */ transaction: string; } /** * The response for Datastore.Rollback. (an empty message). */ export interface Schema$RollbackResponse { } /** * The request for Datastore.RunQuery. */ export interface Schema$RunQueryRequest { /** * The GQL query to run. */ gqlQuery: Schema$GqlQuery; /** * Entities are partitioned into subsets, identified by a partition ID. * Queries are scoped to a single partition. This partition ID is normalized * with the standard default context partition ID. */ partitionId: Schema$PartitionId; /** * The query to run. */ query: Schema$Query; /** * The options for this query. */ readOptions: Schema$ReadOptions; } /** * The response for Datastore.RunQuery. */ export interface Schema$RunQueryResponse { /** * A batch of query results (always present). */ batch: Schema$QueryResultBatch; /** * The parsed form of the `GqlQuery` from the request, if it was set. */ query: Schema$Query; } /** * Options for beginning a new transaction. Transactions can be created * explicitly with calls to Datastore.BeginTransaction or implicitly by setting * ReadOptions.new_transaction in read requests. */ export interface Schema$TransactionOptions { /** * The transaction should only allow reads. */ readOnly: Schema$ReadOnly; /** * The transaction should allow both reads and writes. */ readWrite: Schema$ReadWrite; } /** * A message that can hold any of the supported value types and associated * metadata. */ export interface Schema$Value { /** * An array value. Cannot contain another array value. A `Value` instance that * sets field `array_value` must not set fields `meaning` or * `exclude_from_indexes`. */ arrayValue: Schema$ArrayValue; /** * A blob value. May have at most 1,000,000 bytes. When `exclude_from_indexes` * is false, may have at most 1500 bytes. In JSON requests, must be * base64-encoded. */ blobValue: string; /** * A boolean value. */ booleanValue: boolean; /** * A double value. */ doubleValue: number; /** * An entity value. - May have no key. - May have a key with an incomplete * key path. - May have a reserved/read-only key. */ entityValue: Schema$Entity; /** * If the value should be excluded from all indexes including those defined * explicitly. */ excludeFromIndexes: boolean; /** * A geo point value representing a point on the surface of Earth. */ geoPointValue: Schema$LatLng; /** * An integer value. */ integerValue: string; /** * A key value. */ keyValue: Schema$Key; /** * The `meaning` field should only be populated for backwards compatibility. */ meaning: number; /** * A null value. */ nullValue: string; /** * A UTF-8 encoded string value. When `exclude_from_indexes` is false (it is * indexed) , may have at most 1500 bytes. Otherwise, may be set to at least * 1,000,000 bytes. */ stringValue: string; /** * A timestamp value. When stored in the Datastore, precise only to * microseconds; any additional precision is rounded down. */ timestampValue: string; } export declare class Resource$Projects { root: Datastore; constructor(root: Datastore); getRoot(): Datastore; /** * datastore.projects.allocateIds * @desc Allocates IDs for the given keys, which is useful for referencing an * entity before it is inserted. * @alias datastore.projects.allocateIds * @memberOf! () * * @param {object} params Parameters for request * @param {string} params.projectId The ID of the project against which to make the request. * @param {().AllocateIdsRequest} 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 */ allocateIds(params?: any, options?: MethodOptions): AxiosPromise<Schema$AllocateIdsResponse>; allocateIds(params?: any, options?: MethodOptions | BodyResponseCallback<Schema$AllocateIdsResponse>, callback?: BodyResponseCallback<Schema$AllocateIdsResponse>): void; /** * datastore.projects.beginTransaction * @desc Begins a new transaction. * @alias datastore.projects.beginTransaction * @memberOf! () * * @param {object} params Parameters for request * @param {string} params.projectId The ID of the project against which to make the request. * @param {().BeginTransactionRequest} 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 */ beginTransaction(params?: any, options?: MethodOptions): AxiosPromise<Schema$BeginTransactionResponse>; beginTransaction(params?: any, options?: MethodOptions | BodyResponseCallback<Schema$BeginTransactionResponse>, callback?: BodyResponseCallback<Schema$BeginTransactionResponse>): void; /** * datastore.projects.commit * @desc Commits a transaction, optionally creating, deleting or modifying * some entities. * @alias datastore.projects.commit * @memberOf! () * * @param {object} params Parameters for request * @param {string} params.projectId The ID of the project against which to make the request. * @param {().CommitRequest} 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 */ commit(params?: any, options?: MethodOptions): AxiosPromise<Schema$CommitResponse>; commit(params?: any, options?: MethodOptions | BodyResponseCallback<Schema$CommitResponse>, callback?: BodyResponseCallback<Schema$CommitResponse>): void; /** * datastore.projects.lookup * @desc Looks up entities by key. * @alias datastore.projects.lookup * @memberOf! () * * @param {object} params Parameters for request * @param {string} params.projectId The ID of the project against which to make the request. * @param {().LookupRequest} 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 */ lookup(params?: any, options?: MethodOptions): AxiosPromise<Schema$LookupResponse>; lookup(params?: any, options?: MethodOptions | BodyResponseCallback<Schema$LookupResponse>, callback?: BodyResponseCallback<Schema$LookupResponse>): void; /** * datastore.projects.reserveIds * @desc Prevents the supplied keys' IDs from being auto-allocated by Cloud * Datastore. * @alias datastore.projects.reserveIds * @memberOf! () * * @param {object} params Parameters for request * @param {string} params.projectId The ID of the project against which to make the request. * @param {().ReserveIdsRequest} 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 */ reserveIds(params?: any, options?: MethodOptions): AxiosPromise<Schema$ReserveIdsResponse>; reserveIds(params?: any, options?: MethodOptions | BodyResponseCallback<Schema$ReserveIdsResponse>, callback?: BodyResponseCallback<Schema$ReserveIdsResponse>): void; /** * datastore.projects.rollback * @desc Rolls back a transaction. * @alias datastore.projects.rollback * @memberOf! () * * @param {object} params Parameters for request * @param {string} params.projectId The ID of the project against which to make the request. * @param {().RollbackRequest} 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 */ rollback(params?: any, options?: MethodOptions): AxiosPromise<Schema$RollbackResponse>; rollback(params?: any, options?: MethodOptions | BodyResponseCallback<Schema$RollbackResponse>, callback?: BodyResponseCallback<Schema$RollbackResponse>): void; /** * datastore.projects.runQuery * @desc Queries for entities. * @alias datastore.projects.runQuery * @memberOf! () * * @param {object} params Parameters for request * @param {string} params.projectId The ID of the project against which to make the request. * @param {().RunQueryRequest} 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 */ runQuery(params?: any, options?: MethodOptions): AxiosPromise<Schema$RunQueryResponse>; runQuery(params?: any, options?: MethodOptions | BodyResponseCallback<Schema$RunQueryResponse>, callback?: BodyResponseCallback<Schema$RunQueryResponse>): void; }