/* This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this file, * You can obtain one at http://mozilla.org/MPL/2.0/. */ #include "domstubs.idl" interface nsIArray; interface nsIDOMContact; [scriptable, uuid(eba48030-89e8-11e1-b0c4-0800200c9a66)] interface nsIDOMContactAddress : nsISupports { attribute DOMString type; attribute DOMString streetAddress; attribute DOMString locality; attribute DOMString region; attribute DOMString postalCode; attribute DOMString countryName; }; [scriptable, uuid(e2cb19c0-e4aa-11e1-9b23-0800200c9a66)] interface nsIDOMContactField : nsISupports { attribute jsval type; // DOMString[] for primary/favorite (use:"PREF"), "home", "work", etc. attribute DOMString value; }; [scriptable, uuid(ed0ab260-e4aa-11e1-9b23-0800200c9a66)] interface nsIDOMContactTelField : nsIDOMContactField { attribute DOMString carrier; }; [scriptable, uuid(e31daea0-0cb6-11e1-be50-0800200c9a66)] interface nsIDOMContactFindOptions : nsISupports { attribute DOMString filterValue; // e.g. "Tom" attribute DOMString filterOp; // e.g. "contains" attribute jsval filterBy; // DOMString[], e.g. ["givenName", "nickname"] attribute DOMString sortBy; // "givenName" or "familyName" attribute DOMString sortOrder; // e.g. "descending" attribute unsigned long filterLimit; }; [scriptable, uuid(f0ddb360-e4aa-11e1-9b23-0800200c9a66)] interface nsIDOMContactProperties : nsISupports { attribute jsval name; // DOMString[] attribute jsval honorificPrefix; // DOMString[] attribute jsval givenName; // DOMString[] attribute jsval additionalName; // DOMString[] attribute jsval familyName; // DOMString[] attribute jsval honorificSuffix; // DOMString[] attribute jsval nickname; // DOMString[] attribute jsval email; // ContactField[] attribute jsval photo; // nsIDOMBlob[] attribute jsval url; // ContactField[] attribute jsval category; // DOMString[] attribute jsval adr; // ContactAddress[] attribute jsval tel; // ContactTelField[] attribute jsval org; // DOMString[] attribute jsval jobTitle; // DOMString[] attribute jsval bday; // Date attribute jsval note; // DOMString[] attribute jsval impp; // ContactField[] attribute jsval anniversary; // Date attribute jsval sex; // DOMString attribute jsval genderIdentity; // DOMString };