Bug 1852740: add tests for the `fetchpriority` attribute in Link headers. r=necko...
[gecko.git] / dom / chrome-webidl / NetDashboard.webidl
blob937ffc11d83de6417609dfec4ed1d617515e7f4a
1 /* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /* This Source Code Form is subject to the terms of the Mozilla Public
3  * License, v. 2.0. If a copy of the MPL was not distributed with this file,
4  * You can obtain one at http://mozilla.org/MPL/2.0/. */
6 // This file defines dictionaries used by about:networking page.
8 dictionary SocketElement {
9   DOMString host = "";
10   unsigned long port = 0;
11   boolean active = false;
12   DOMString type = "";
13   double sent = 0;
14   double received = 0;
17 [GenerateConversionToJS]
18 dictionary SocketsDict {
19   sequence<SocketElement> sockets;
20   double sent = 0;
21   double received = 0;
24 dictionary HttpConnInfo {
25   unsigned long rtt = 0;
26   unsigned long ttl = 0;
27   DOMString protocolVersion = "";
30 dictionary DnsAndSockInfoDict {
31   boolean speculative = false;
34 dictionary HttpConnectionElement {
35   DOMString host = "";
36   unsigned long port = 0;
37   DOMString httpVersion = "";
38   boolean ssl = false;
39   sequence<HttpConnInfo> active;
40   sequence<HttpConnInfo> idle;
41   sequence<DnsAndSockInfoDict> dnsAndSocks;
44 [GenerateConversionToJS]
45 dictionary HttpConnDict {
46   sequence<HttpConnectionElement> connections;
49 dictionary WebSocketElement {
50   DOMString hostport = "";
51   unsigned long msgsent = 0;
52   unsigned long msgreceived = 0;
53   double sentsize = 0;
54   double receivedsize = 0;
55   boolean encrypted = false;
58 [GenerateConversionToJS]
59 dictionary WebSocketDict {
60   sequence<WebSocketElement> websockets;
63 dictionary DnsCacheEntry {
64   DOMString hostname = "";
65   sequence<DOMString> hostaddr;
66   DOMString family = "";
67   double expiration = 0;
68   boolean trr = false;
69   DOMString originAttributesSuffix = "";
70   DOMString flags = "";
73 [GenerateConversionToJS]
74 dictionary DNSCacheDict {
75   sequence<DnsCacheEntry> entries;
78 [GenerateConversionToJS]
79 dictionary DNSLookupDict {
80   sequence<DOMString> address;
81   DOMString error = "";
82   boolean answer = false;
85 dictionary SVCParam {
86   unsigned short type = 0;
89 dictionary SVCParamAlpn : SVCParam {
90   DOMString alpn = "";
93 dictionary SVCParamNoDefaultAlpn : SVCParam {
96 dictionary SVCParamPort : SVCParam {
97   unsigned short port = 0;
100 dictionary SVCParamIPv4Hint : SVCParam {
101   sequence<DOMString> address;
104 dictionary SVCParamIPv6Hint : SVCParam {
105   sequence<DOMString> address;
108 dictionary SVCParamEchConfig : SVCParam {
109   DOMString echConfig = "";
112 dictionary SVCParamODoHConfig : SVCParam {
113   DOMString ODoHConfig = "";
116 dictionary HTTPSRecord {
117   unsigned short priority = 0;
118   DOMString targetName = "";
119   SVCParamAlpn alpn;
120   SVCParamNoDefaultAlpn noDefaultAlpn;
121   SVCParamPort port;
122   SVCParamIPv4Hint ipv4Hint;
123   SVCParamIPv6Hint ipv6Hint;
124   SVCParamEchConfig echConfig;
125   SVCParamODoHConfig ODoHConfig;
128 [GenerateConversionToJS]
129 dictionary HTTPSRRLookupDict {
130   DOMString error = "";
131   boolean answer = false;
132   sequence<HTTPSRecord> records;
135 [GenerateConversionToJS]
136 dictionary ConnStatusDict {
137   DOMString status = "";
140 dictionary RcwnPerfStats {
141   unsigned long avgShort = 0;
142   unsigned long avgLong = 0;
143   unsigned long stddevLong = 0;
146 [GenerateConversionToJS]
147 dictionary RcwnStatus {
148   unsigned long totalNetworkRequests = 0;
149   unsigned long rcwnCacheWonCount = 0;
150   unsigned long rcwnNetWonCount = 0;
151   unsigned long cacheSlowCount = 0;
152   unsigned long cacheNotSlowCount = 0;
153   // Sequence is indexed by CachePerfStats::EDataType
154   sequence<RcwnPerfStats> perfStats;