package chrome;
import js.html.ArrayBuffer;
typedef Match = {
var certificate : ArrayBuffer;
var keyAlgorithm : Dynamic;
}
@:enum abstract CertificateTypes(String) from String to String {
var rsaSign = "rsaSign";
var ecdsaSign = "ecdsaSign";
}
@:require(chrome)
@:native("chrome.platformKeys")
extern class PlatformKeys {
static function getAll( request : {certificateTypes:CertificateTypes,?certificateAuthorities:Array}, callback : Array->Void ) : Void;
static function getKeyPair( certificate : ArrayBuffer, parameters : Dynamic, callback : Dynamic->?Dynamic->Void ) : Void;
static function subtleCrypto() : js.html.SubtleCrypto;
static function verifyTLSServerCertificate( details : { serverCertificateChain : Array, hostname : String }, callback : Bool->Array->Void ) : Void;
}