| // https://github.com/wicg/trusted-types |
| |
| typedef (DOMString or TrustedHTML) HTMLString; |
| typedef (DOMString or TrustedScript) ScriptString; |
| typedef (DOMString or TrustedScriptURL) ScriptURLString; |
| typedef (USVString or TrustedURL) URLString; |
| |
| [Exposed=Window] |
| interface TrustedHTML { |
| stringifier; |
| }; |
| |
| [Exposed=Window] |
| interface TrustedScript { |
| stringifier; |
| }; |
| |
| [Exposed=Window] |
| interface TrustedScriptURL { |
| stringifier; |
| }; |
| |
| [Exposed=Window] |
| interface TrustedURL { |
| stringifier; |
| }; |
| |
| [Exposed=Window] |
| interface TrustedTypePolicyFactory { |
| [Unforgeable] TrustedTypePolicy createPolicy(DOMString policyName, TrustedTypePolicyOptions policyOptions); |
| // All the policy object names that have been created |
| [Unforgeable] sequence<DOMString> getPolicyNames(); |
| }; |
| |
| [Exposed=Window] |
| interface TrustedTypePolicy { |
| [Unforgeable] readonly attribute DOMString name; |
| [Unforgeable] TrustedHTML createHTML(DOMString input); |
| [Unforgeable] TrustedScript createScript(DOMString input); |
| [Unforgeable] TrustedScriptURL createScriptURL(DOMString input); |
| [Unforgeable] TrustedURL createURL(DOMString input); |
| }; |
| |
| dictionary TrustedTypePolicyOptions { |
| CreateHTMLCallback createHTML; |
| CreateScriptCallback createScript; |
| CreateURLCallback createScriptURL; |
| CreateURLCallback createURL; |
| }; |
| |
| callback CreateHTMLCallback = DOMString (DOMString input); |
| callback CreateScriptCallback = DOMString (DOMString input); |
| callback CreateURLCallback = USVString (DOMString input); |