import { RequestEnvelope , ResponseEnvelope } from 'ask-sdk-model' ; import { IncomingHttpHeaders } from 'http' ; import { pki } from 'node-forge' ; export const DataProvider = { requestHeader ( ) { return { 'content-type' : null , 'signature' : null , 'signaturecertchainurl' : null , } ; } , requestEnvelope ( ) { return { context : { AudioPlayer : null , Display : null , System : { apiAccessToken : null , apiEndpoint : null , application : { applicationId : null , } , device : { deviceId : null , supportedInterfaces : null , } , user : { userId : null , } , } , } , request : { type : null , timestamp : null , requestId : null , } , session : { application : { applicationId : null , } , attributes : null , new : true , sessionId : null , user : { accessToken : null , permissions : { consentToken : null , } , userId : null , } , } , version : '1.0' , } ; } , responseEnvelope ( ) { return { version : '1.0' , response : { } , } ; } , } ; export function createInvalidCert ( extensions ) { const keys = pki . rsa . generateKeyPair ( 512 ) ; const cert = pki . createCertificate ( ) ; cert . publicKey = keys . publicKey ; cert . serialNumber = '01' ; cert . validity . notBefore = new Date ( 2017 , 4 , 6 ) ; cert . validity . notAfter = new Date ( 2017 , 4 , 8 ) ; const attrs = [ ] ; cert . setSubject ( attrs ) ; cert . setIssuer ( attrs ) ; cert . setExtensions ( extensions ) ; cert . sign ( keys . privateKey ) ; return cert ; }