DefinitelyTyped/types/gapi.client.streetviewpublish/gapi.client.streetviewpublish-tests.ts
Alexey Bolisov 4f8a3d571b Add Google APIs typings (#19083)
* Add Google APIs typings

* [gapi.cliebt.* ] Add version as part of typings name and fix gapi.client tslint errors

* versions should not get their own folders
fixing a few typos
using /** syntax so comments show up in editors
export only actual (last) version for now

* export only actual (last) version for now

* merge namespaces and remove unnecessary namespace qualifiers

* remove namespace qualifier for gapi.client.Request from nested namespaces and change Request base interface to Promise

* disable await-promise rule

* fix collision between gapi.client.Request and Request from nested namespace
disable no-irregular-whitespace rule

* sort properties and namespace resources

* remove empty comments
sort resources amd methods in tests and readme.md

* update 'this is autogenerated file' banner to remove this text from gapi.client namespace hint
use multiline comments when comment has several lines

* implement no-trailing-whitespace, no-padding, max-line-length, await-promise, no-irregular-whitespace rules

* add strictFunctionTypes to tsconfig

* fix "Whitespace within parentheses is not allowed" rule

* fix ts-lint rules

* fixes

* remove deprecated replicapool and replicapoolupdater api

* fix no-irregular-whitespace

* fix no-irregular-whitespace
2017-10-09 14:55:04 -07:00

215 lines
8.0 KiB
TypeScript

/* This is stub file for gapi.client.{{=it.name}} definition tests */
/* IMPORTANT.
* This file was automatically 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
**/
gapi.load('client', () => {
/** now we can use gapi.client */
gapi.client.load('streetviewpublish', 'v1', () => {
/** now we can use gapi.client.streetviewpublish */
/** don't forget to authenticate your client before sending any request to resources: */
/** declare client_id registered in Google Developers Console */
const client_id = '<<PUT YOUR CLIENT ID HERE>>';
const scope = [
/** Publish and manage your 360 photos on Google Street View */
'https://www.googleapis.com/auth/streetviewpublish',
];
const immediate = true;
gapi.auth.authorize({ client_id, scope, immediate }, authResult => {
if (authResult && !authResult.error) {
/** handle succesfull authorization */
run();
} else {
/** handle authorization error */
}
});
run();
});
async function run() {
/**
* After the client finishes uploading the photo with the returned
* UploadRef,
* CreatePhoto
* publishes the uploaded Photo to
* Street View on Google Maps.
*
* Currently, the only way to set heading, pitch, and roll in CreatePhoto is
* through the [Photo Sphere XMP
* metadata](https://developers.google.com/streetview/spherical-metadata) in
* the photo bytes. The `pose.heading`, `pose.pitch`, `pose.roll`,
* `pose.altitude`, and `pose.level` fields in Pose are ignored for
* CreatePhoto.
*
* This method returns the following error codes:
*
* &#42; google.rpc.Code.INVALID_ARGUMENT if the request is malformed.
* &#42; google.rpc.Code.NOT_FOUND if the upload reference does not exist.
* &#42; google.rpc.Code.RESOURCE_EXHAUSTED if the account has reached the
* storage limit.
*/
await gapi.client.photo.create({
});
/**
* Deletes a Photo and its metadata.
*
* This method returns the following error codes:
*
* &#42; google.rpc.Code.PERMISSION_DENIED if the requesting user did not
* create the requested photo.
* &#42; google.rpc.Code.NOT_FOUND if the photo ID does not exist.
*/
await gapi.client.photo.delete({
photoId: "photoId",
});
/**
* Gets the metadata of the specified
* Photo.
*
* This method returns the following error codes:
*
* &#42; google.rpc.Code.PERMISSION_DENIED if the requesting user did not
* create the requested Photo.
* &#42; google.rpc.Code.NOT_FOUND if the requested
* Photo does not exist.
*/
await gapi.client.photo.get({
photoId: "photoId",
view: "view",
});
/**
* Creates an upload session to start uploading photo bytes. The upload URL of
* the returned UploadRef is used to
* upload the bytes for the Photo.
*
* In addition to the photo requirements shown in
* https://support.google.com/maps/answer/7012050?hl=en&ref_topic=6275604,
* the photo must also meet the following requirements:
*
* &#42; Photo Sphere XMP metadata must be included in the photo medadata. See
* https://developers.google.com/streetview/spherical-metadata for the
* required fields.
* &#42; The pixel size of the photo must meet the size requirements listed in
* https://support.google.com/maps/answer/7012050?hl=en&ref_topic=6275604, and
* the photo must be a full 360 horizontally.
*
* After the upload is complete, the
* UploadRef is used with
* CreatePhoto
* to create the Photo object entry.
*/
await gapi.client.photo.startUpload({
});
/**
* Updates the metadata of a Photo, such
* as pose, place association, connections, etc. Changing the pixels of a
* photo is not supported.
*
* Only the fields specified in the
* updateMask
* field are used. If `updateMask` is not present, the update applies to all
* fields.
*
* <aside class="note"><b>Note:</b> To update
* Pose.altitude,
* Pose.latLngPair has to be
* filled as well. Otherwise, the request will fail.</aside>
*
* This method returns the following error codes:
*
* &#42; google.rpc.Code.PERMISSION_DENIED if the requesting user did not
* create the requested photo.
* &#42; google.rpc.Code.INVALID_ARGUMENT if the request is malformed.
* &#42; google.rpc.Code.NOT_FOUND if the requested photo does not exist.
*/
await gapi.client.photo.update({
id: "id",
updateMask: "updateMask",
});
/**
* Deletes a list of Photos and their
* metadata.
*
* Note that if
* BatchDeletePhotos
* fails, either critical fields are missing or there was an authentication
* error. Even if
* BatchDeletePhotos
* succeeds, there may have been failures for single photos in the batch.
* These failures will be specified in each
* PhotoResponse.status
* in
* BatchDeletePhotosResponse.results.
* See
* DeletePhoto
* for specific failures that can occur per photo.
*/
await gapi.client.photos.batchDelete({
});
/**
* Gets the metadata of the specified
* Photo batch.
*
* Note that if
* BatchGetPhotos
* fails, either critical fields are missing or there was an authentication
* error. Even if
* BatchGetPhotos
* succeeds, there may have been failures for single photos in the batch.
* These failures will be specified in each
* PhotoResponse.status
* in
* BatchGetPhotosResponse.results.
* See
* GetPhoto
* for specific failures that can occur per photo.
*/
await gapi.client.photos.batchGet({
photoIds: "photoIds",
view: "view",
});
/**
* Updates the metadata of Photos, such
* as pose, place association, connections, etc. Changing the pixels of photos
* is not supported.
*
* Note that if
* BatchUpdatePhotos
* fails, either critical fields are missing or there was an authentication
* error. Even if
* BatchUpdatePhotos
* succeeds, there may have been failures for single photos in the batch.
* These failures will be specified in each
* PhotoResponse.status
* in
* BatchUpdatePhotosResponse.results.
* See
* UpdatePhoto
* for specific failures that can occur per photo.
*
* Only the fields specified in
* updateMask
* field are used. If `updateMask` is not present, the update applies to all
* fields.
*
* <aside class="note"><b>Note:</b> To update
* Pose.altitude,
* Pose.latLngPair has to be
* filled as well. Otherwise, the request will fail.</aside>
*/
await gapi.client.photos.batchUpdate({
});
/**
* Lists all the Photos that belong to
* the user.
*/
await gapi.client.photos.list({
filter: "filter",
pageSize: 2,
pageToken: "pageToken",
view: "view",
});
}
});