summaryrefslogtreecommitdiffstats
path: root/toolkit/components/satchel/nsIFormHistory.idl
diff options
context:
space:
mode:
Diffstat (limited to 'toolkit/components/satchel/nsIFormHistory.idl')
-rw-r--r--toolkit/components/satchel/nsIFormHistory.idl74
1 files changed, 74 insertions, 0 deletions
diff --git a/toolkit/components/satchel/nsIFormHistory.idl b/toolkit/components/satchel/nsIFormHistory.idl
new file mode 100644
index 000000000..ac78451e9
--- /dev/null
+++ b/toolkit/components/satchel/nsIFormHistory.idl
@@ -0,0 +1,74 @@
+/* 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 "nsISupports.idl"
+interface nsIFile;
+interface mozIStorageConnection;
+
+/**
+ * The nsIFormHistory object is a service which holds a set of name/value
+ * pairs. The names correspond to form field names, and the values correspond
+ * to values the user has submitted. So, several values may exist for a single
+ * name.
+ *
+ * Note: this interface provides no means to access stored values.
+ * Stored values are used by the FormFillController to generate
+ * autocomplete matches.
+ *
+ * @deprecated use FormHistory.jsm instead.
+ */
+
+[scriptable, uuid(5d7d84d1-9798-4016-bf61-a32acf09b29d)]
+interface nsIFormHistory2 : nsISupports
+{
+ /**
+ * Returns true if the form history has any entries.
+ */
+ readonly attribute boolean hasEntries;
+
+ /**
+ * Adds a name and value pair to the form history.
+ */
+ void addEntry(in AString name, in AString value);
+
+ /**
+ * Removes a name and value pair from the form history.
+ */
+ void removeEntry(in AString name, in AString value);
+
+ /**
+ * Removes all entries that are paired with a name.
+ */
+ void removeEntriesForName(in AString name);
+
+ /**
+ * Removes all entries in the entire form history.
+ */
+ void removeAllEntries();
+
+ /**
+ * Returns true if there is no entry that is paired with a name.
+ */
+ boolean nameExists(in AString name);
+
+ /**
+ * Gets whether a name and value pair exists in the form history.
+ */
+ boolean entryExists(in AString name, in AString value);
+
+ /**
+ * Removes entries that were created between the specified times.
+ *
+ * @param aBeginTime
+ * The beginning of the timeframe, in microseconds
+ * @param aEndTime
+ * The end of the timeframe, in microseconds
+ */
+ void removeEntriesByTimeframe(in long long aBeginTime, in long long aEndTime);
+
+ /**
+ * Returns the underlying DB connection the form history module is using.
+ */
+ readonly attribute mozIStorageConnection DBConnection;
+};