UNPKG

typescript-closure-tools

Version:

Command-line tools to convert closure-style JSDoc annotations to typescript, and to convert typescript sources to closure externs files

146 lines (139 loc) 4.71 kB
// Type definitions for Google Url Shortener API // Project: https://developers.google.com/url-shortener/ // Definitions by: Frank M <https://github.com/sgtfrankieboy> // Definitions: https://github.com/borisyankov/DefinitelyTyped /// <reference path="../gapi/gapi.d.ts" /> declare module gapi.client.urlshortener { export interface url { /** * Expands a short URL or gets creation time and analytics. */ get(object: { /** * The short URL, including the protocol. */ 'shortUrl': string; /** * Additional information to return. ANALYTICS_CLICKS, ANALYTICS_TOP_STRINGS, FULL */ 'projection'?: string; /** * Selector specifying which fields to include in a partial response. */ 'fields'?: string }): HttpRequest<GoogleApiUrlShortenerUrlResource>; /** * Creates a new short URL. */ insert(object: { /** * Selector specifying which fields to include in a partial response. */ 'fields'?: string; /** * HTTP Request Body */ 'RequestBody'?: string }): HttpRequest<GoogleApiUrlShortenerUrlResource>; /** * Retrieves a list of URLs shortened by a user. */ list(object: { /** * Additional information to return. ANALYTICS_CLICKS, FULL */ 'projection'?: string; /** * Token for requesting successive pages of results. */ 'start-token'?: string; /** * Selector specifying which fields to include in a partial response. */ 'fields'?: string }): HttpRequest<GoogleApiUrlShortenerUrlResource>; } } interface GoogleApiUrlShortenerUrlResource { /** * The fixed string "urlshortener#url". */ kind: string; /** * Short URL */ id: string; /** * Long URL */ longUrl: string; /** * Status of the target URL. Possible values: "OK", "MALWARE", "PHISHING", or "REMOVED". */ status: string; /** * Time the short URL was created; ISO 8601 representation using the yyyy-MM-dd'T'HH:mm:ss.SSSZZ format. */ created: string; /** * A summary of the click analytics for the short and long URL. Might not be present if not requested or currently unavailable. */ analytics: { /** * Click analytics over all time. */ allTime: GoogleApiUrlShortenerUrlResourceAnalyticsObject; /** * Click analytics over the last month. */ month: GoogleApiUrlShortenerUrlResourceAnalyticsObject; /** * Click analytics over the last week. */ week: GoogleApiUrlShortenerUrlResourceAnalyticsObject; /** * Click analytics over the last day. */ day: GoogleApiUrlShortenerUrlResourceAnalyticsObject; /** * Click analytics over the last two hours. */ twoHours: GoogleApiUrlShortenerUrlResourceAnalyticsObject; } } interface GoogleApiUrlShortenerUrlResourceAnalyticsObject { /** * Number of clicks on this short URL. */ shortUrlClicks: string; /** * Number of clicks on all goo.gl short URLs pointing to this long URL. */ longUrlClicks: string; /** * Top referring hosts, e.g. "www.google.com"; sorted by (descending) click counts. Only present if this data is available. */ referrers: GoogleApiUrlShortenerUrlResourceAnalyticsArrayObject[]; /** * Top countries (expressed as country codes), e.g. "US" or "DE"; sorted by (descending) click counts. Only present if this data is available. */ countries: GoogleApiUrlShortenerUrlResourceAnalyticsArrayObject[]; /** * Top browsers, e.g. "Chrome"; sorted by (descending) click counts. Only present if this data is available. */ browsers: GoogleApiUrlShortenerUrlResourceAnalyticsArrayObject[]; /** * Top platforms or OSes, e.g. "Windows"; sorted by (descending) click counts. Only present if this data is available. */ platforms: GoogleApiUrlShortenerUrlResourceAnalyticsArrayObject[]; } interface GoogleApiUrlShortenerUrlResourceAnalyticsArrayObject { /** * Number of clicks for this top entry, e.g. for this particular country or browser. */ count: string; /** * Label assigned to this top entry, e.g. "US" or "Chrome". */ id: string; }