blob: e069ae9003f7a9055b970609c58095ee18160cd7 [file] [log] [blame]
// Copyright 2017 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// This file was generated by:
// tools/json_schema_compiler/compiler.py.
// NOTE: The format of types has changed. 'FooType' is now
// 'chrome.autofillPrivate.FooType'.
// Please run the closure compiler before committing changes.
// See https://chromium.googlesource.com/chromium/src/+/master/docs/closure_compilation.md
/** @fileoverview Externs generated from namespace: autofillPrivate */
/**
* @const
*/
chrome.autofillPrivate = {};
/**
* @enum {string}
* @see https://developer.chrome.com/extensions/autofillPrivate#type-AddressField
*/
chrome.autofillPrivate.AddressField = {
FULL_NAME: 'FULL_NAME',
COMPANY_NAME: 'COMPANY_NAME',
ADDRESS_LINES: 'ADDRESS_LINES',
ADDRESS_LEVEL_1: 'ADDRESS_LEVEL_1',
ADDRESS_LEVEL_2: 'ADDRESS_LEVEL_2',
ADDRESS_LEVEL_3: 'ADDRESS_LEVEL_3',
POSTAL_CODE: 'POSTAL_CODE',
SORTING_CODE: 'SORTING_CODE',
COUNTRY_CODE: 'COUNTRY_CODE',
};
/**
* @typedef {{
* summaryLabel: string,
* summarySublabel: (string|undefined),
* isLocal: (boolean|undefined),
* isCached: (boolean|undefined)
* }}
* @see https://developer.chrome.com/extensions/autofillPrivate#type-AutofillMetadata
*/
chrome.autofillPrivate.AutofillMetadata;
/**
* @typedef {{
* guid: (string|undefined),
* fullNames: (!Array<string>|undefined),
* companyName: (string|undefined),
* addressLines: (string|undefined),
* addressLevel1: (string|undefined),
* addressLevel2: (string|undefined),
* addressLevel3: (string|undefined),
* postalCode: (string|undefined),
* sortingCode: (string|undefined),
* countryCode: (string|undefined),
* phoneNumbers: (!Array<string>|undefined),
* emailAddresses: (!Array<string>|undefined),
* languageCode: (string|undefined),
* metadata: (!chrome.autofillPrivate.AutofillMetadata|undefined)
* }}
* @see https://developer.chrome.com/extensions/autofillPrivate#type-AddressEntry
*/
chrome.autofillPrivate.AddressEntry;
/**
* @typedef {{
* name: (string|undefined),
* countryCode: (string|undefined)
* }}
* @see https://developer.chrome.com/extensions/autofillPrivate#type-CountryEntry
*/
chrome.autofillPrivate.CountryEntry;
/**
* @typedef {{
* field: !chrome.autofillPrivate.AddressField,
* fieldName: string,
* isLongField: boolean,
* placeholder: (string|undefined)
* }}
* @see https://developer.chrome.com/extensions/autofillPrivate#type-AddressComponent
*/
chrome.autofillPrivate.AddressComponent;
/**
* @typedef {{
* row: !Array<!chrome.autofillPrivate.AddressComponent>
* }}
* @see https://developer.chrome.com/extensions/autofillPrivate#type-AddressComponentRow
*/
chrome.autofillPrivate.AddressComponentRow;
/**
* @typedef {{
* components: !Array<!chrome.autofillPrivate.AddressComponentRow>,
* languageCode: string
* }}
* @see https://developer.chrome.com/extensions/autofillPrivate#type-AddressComponents
*/
chrome.autofillPrivate.AddressComponents;
/**
* @typedef {{
* guid: (string|undefined),
* name: (string|undefined),
* cardNumber: (string|undefined),
* expirationMonth: (string|undefined),
* expirationYear: (string|undefined),
* metadata: (!chrome.autofillPrivate.AutofillMetadata|undefined)
* }}
* @see https://developer.chrome.com/extensions/autofillPrivate#type-CreditCardEntry
*/
chrome.autofillPrivate.CreditCardEntry;
/**
* @typedef {{
* phoneNumbers: !Array<string>,
* indexOfNewNumber: number,
* countryCode: string
* }}
* @see https://developer.chrome.com/extensions/autofillPrivate#type-ValidatePhoneParams
*/
chrome.autofillPrivate.ValidatePhoneParams;
/**
* Saves the given address. If |address| has an empty string as its ID, it will
* be assigned a new one and added as a new entry.
* @param {!chrome.autofillPrivate.AddressEntry} address The address entry to
* save.
* @see https://developer.chrome.com/extensions/autofillPrivate#method-saveAddress
*/
chrome.autofillPrivate.saveAddress = function(address) {};
/**
* Gets the list of all countries.
* @param {function(!Array<!chrome.autofillPrivate.CountryEntry>):void} callback
* Callback which will be called with the countries.
* @see https://developer.chrome.com/extensions/autofillPrivate#method-getCountryList
*/
chrome.autofillPrivate.getCountryList = function(callback) {};
/**
* Gets the address components for a given country code.
* @param {string} countryCode A two-character string representing the address'
* country whose components should be returned. See autofill_country.cc
* for a list of valid codes.
* @param {function(!chrome.autofillPrivate.AddressComponents):void} callback
* Callback which will be called with components.
* @see https://developer.chrome.com/extensions/autofillPrivate#method-getAddressComponents
*/
chrome.autofillPrivate.getAddressComponents = function(countryCode, callback) {};
/**
* Gets the list of addresses.
* @param {function(!Array<!chrome.autofillPrivate.AddressEntry>):void} callback
* Callback which will be called with the list of addresses.
* @see https://developer.chrome.com/extensions/autofillPrivate#method-getAddressList
*/
chrome.autofillPrivate.getAddressList = function(callback) {};
/**
* Saves the given credit card. If |card| has an empty string as its ID, it will
* be assigned a new one and added as a new entry.
* @param {!chrome.autofillPrivate.CreditCardEntry} card The card entry to save.
* @see https://developer.chrome.com/extensions/autofillPrivate#method-saveCreditCard
*/
chrome.autofillPrivate.saveCreditCard = function(card) {};
/**
* Removes the entry (address or credit card) with the given ID.
* @param {string} guid ID of the entry to remove.
* @see https://developer.chrome.com/extensions/autofillPrivate#method-removeEntry
*/
chrome.autofillPrivate.removeEntry = function(guid) {};
/**
* Validates a newly-added phone number and invokes the callback with a list of
* validated numbers. Note that if the newly-added number was invalid, it will
* not be returned in the list of valid numbers.
* @param {!chrome.autofillPrivate.ValidatePhoneParams} params The parameters to
* this function.
* @param {function(!Array<string>):void} callback Callback which will be called
* with validated phone numbers.
* @see https://developer.chrome.com/extensions/autofillPrivate#method-validatePhoneNumbers
*/
chrome.autofillPrivate.validatePhoneNumbers = function(params, callback) {};
/**
* Gets the list of credit cards.
* @param {function(!Array<!chrome.autofillPrivate.CreditCardEntry>):void}
* callback Callback which will be called with the list of credit cards.
* @see https://developer.chrome.com/extensions/autofillPrivate#method-getCreditCardList
*/
chrome.autofillPrivate.getCreditCardList = function(callback) {};
/**
* Clears the data associated with a wallet card which was saved locally so that
* the saved copy is masked (e.g., "Card ending in 1234").
* @param {string} guid GUID of the credit card to mask.
* @see https://developer.chrome.com/extensions/autofillPrivate#method-maskCreditCard
*/
chrome.autofillPrivate.maskCreditCard = function(guid) {};
/**
* Fired when the address list has changed, meaning that an entry has been
* added, removed, or changed. |entries| The updated list of entries.
* @type {!ChromeEvent}
* @see https://developer.chrome.com/extensions/autofillPrivate#event-onAddressListChanged
*/
chrome.autofillPrivate.onAddressListChanged;
/**
* Fired when the credit card list has changed, meaning that an entry has been
* added, removed, or changed. |entries| The updated list of entries.
* @type {!ChromeEvent}
* @see https://developer.chrome.com/extensions/autofillPrivate#event-onCreditCardListChanged
*/
chrome.autofillPrivate.onCreditCardListChanged;