mirror of
				https://github.com/musix-org/musix-oss
				synced 2025-11-04 12:59:31 +00:00 
			
		
		
		
	Updated everything
This commit is contained in:
		
							
								
								
									
										45
									
								
								.yarnclean
									
									
									
									
									
								
							
							
						
						
									
										45
									
								
								.yarnclean
									
									
									
									
									
								
							@@ -1,45 +0,0 @@
 | 
				
			|||||||
# test directories
 | 
					 | 
				
			||||||
__tests__
 | 
					 | 
				
			||||||
test
 | 
					 | 
				
			||||||
tests
 | 
					 | 
				
			||||||
powered-test
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# asset directories
 | 
					 | 
				
			||||||
docs
 | 
					 | 
				
			||||||
doc
 | 
					 | 
				
			||||||
website
 | 
					 | 
				
			||||||
images
 | 
					 | 
				
			||||||
assets
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# examples
 | 
					 | 
				
			||||||
example
 | 
					 | 
				
			||||||
examples
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# code coverage directories
 | 
					 | 
				
			||||||
coverage
 | 
					 | 
				
			||||||
.nyc_output
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# build scripts
 | 
					 | 
				
			||||||
Makefile
 | 
					 | 
				
			||||||
Gulpfile.js
 | 
					 | 
				
			||||||
Gruntfile.js
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# configs
 | 
					 | 
				
			||||||
appveyor.yml
 | 
					 | 
				
			||||||
circle.yml
 | 
					 | 
				
			||||||
codeship-services.yml
 | 
					 | 
				
			||||||
codeship-steps.yml
 | 
					 | 
				
			||||||
wercker.yml
 | 
					 | 
				
			||||||
.tern-project
 | 
					 | 
				
			||||||
.gitattributes
 | 
					 | 
				
			||||||
.editorconfig
 | 
					 | 
				
			||||||
.*ignore
 | 
					 | 
				
			||||||
.eslintrc
 | 
					 | 
				
			||||||
.jshintrc
 | 
					 | 
				
			||||||
.flowconfig
 | 
					 | 
				
			||||||
.documentup.json
 | 
					 | 
				
			||||||
.yarn-metadata.json
 | 
					 | 
				
			||||||
.travis.yml
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# misc
 | 
					 | 
				
			||||||
*.md
 | 
					 | 
				
			||||||
@@ -12,7 +12,6 @@ module.exports = {
 | 
				
			|||||||
            output = await eval(input);
 | 
					            output = await eval(input);
 | 
				
			||||||
        } catch (error) {
 | 
					        } catch (error) {
 | 
				
			||||||
            output = error.toString();
 | 
					            output = error.toString();
 | 
				
			||||||
            embed.setColor('#FF0000');
 | 
					 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
        const embed = new RichEmbed()
 | 
					        const embed = new RichEmbed()
 | 
				
			||||||
            .setTitle('Evaluation Command')
 | 
					            .setTitle('Evaluation Command')
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -6,15 +6,16 @@ module.exports = {
 | 
				
			|||||||
        const embed = new RichEmbed()
 | 
					        const embed = new RichEmbed()
 | 
				
			||||||
            .setTitle('Commands for Musix!')
 | 
					            .setTitle('Commands for Musix!')
 | 
				
			||||||
            .addField(`${prefix}play | ${prefix}p`, 'Play a song.', true)
 | 
					            .addField(`${prefix}play | ${prefix}p`, 'Play a song.', true)
 | 
				
			||||||
 | 
					            .addField(`${prefix}skip | ${prefix}s`, 'Skip a song.', true)
 | 
				
			||||||
            .addField(`${prefix}queue | ${prefix}q`, 'Display the queue.', true)
 | 
					            .addField(`${prefix}queue | ${prefix}q`, 'Display the queue.', true)
 | 
				
			||||||
            .addField(`${prefix}nowplaying | ${prefix}np`, 'Display whats currently playing.', true)
 | 
					            .addField(`${prefix}nowplaying | ${prefix}np`, 'Display whats currently playing.', true)
 | 
				
			||||||
            .addField(`${prefix}volume`, 'Change or check the volume.', true)
 | 
					            .addField(`${prefix}volume`, 'Change or check the volume.', true)
 | 
				
			||||||
            .addField(`${prefix}pause`, 'Pause the music.', true)
 | 
					            .addField(`${prefix}pause`, 'Pause the music.', true)
 | 
				
			||||||
            .addField(`${prefix}resume`, 'Resume the music.', true)
 | 
					            .addField(`${prefix}resume`, 'Resume the music.', true)
 | 
				
			||||||
            .addField(`${prefix}stop`, 'Stop the music, Clear the queue and leave the current voice channel.', true)
 | 
					            .addField(`${prefix}stop`, 'Stop the music, Clear the queue and leave the current voice channel.', true)
 | 
				
			||||||
            .addField(`${prefix}skip | ${prefix}s`, 'Skip a song.', true)
 | 
					            .addField(`${prefix}restartmusic`, 'Restart the music. Recommended to use instead of stop on any possible errors.', true)
 | 
				
			||||||
            .addField(`${prefix}invite`, 'Invite Musix.', true)
 | 
					            .addField(`${prefix}invite`, 'Invite Musix.', true)
 | 
				
			||||||
            .addField(`${prefix}ping`, 'See the current ping for Musix', true)
 | 
					            .addField(`${prefix}status`, 'See different information for Musix.', true)
 | 
				
			||||||
            .addField(`${prefix}bug`, 'Report a bug.', true)
 | 
					            .addField(`${prefix}bug`, 'Report a bug.', true)
 | 
				
			||||||
            .addField(`${prefix}settings`, 'Change the guild specific settings.', true)
 | 
					            .addField(`${prefix}settings`, 'Change the guild specific settings.', true)
 | 
				
			||||||
            .addField(`${prefix}help`, 'Display the help.', true)
 | 
					            .addField(`${prefix}help`, 'Display the help.', true)
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,24 +0,0 @@
 | 
				
			|||||||
module.exports = {
 | 
					 | 
				
			||||||
	name: 'np',
 | 
					 | 
				
			||||||
	description: 'Now playing command.',
 | 
					 | 
				
			||||||
	cooldown: 5,
 | 
					 | 
				
			||||||
	async execute(message, args, client, RichEmbed) {
 | 
					 | 
				
			||||||
		const ytdl = require('ytdl-core')
 | 
					 | 
				
			||||||
		const serverQueue = client.queue.get(message.guild.id);
 | 
					 | 
				
			||||||
		if (!serverQueue) return message.channel.send(':x: There is nothing playing.');
 | 
					 | 
				
			||||||
		let data = await Promise.resolve(ytdl.getInfo(serverQueue.songs[0].url));
 | 
					 | 
				
			||||||
		let songtime = (data.length_seconds * 1000).toFixed(0);
 | 
					 | 
				
			||||||
		let completed = (serverQueue.connection.dispatcher.time).toFixed(0);
 | 
					 | 
				
			||||||
		let barlength = 30;
 | 
					 | 
				
			||||||
		let completedpercent = ((completed / songtime) * barlength).toFixed(0);
 | 
					 | 
				
			||||||
		let array = []; for (let i = 0; i < completedpercent - 1; i++) { array.push('⎯'); } array.push('⭗'); for (let i = 0; i < barlength - completedpercent - 1; i++) { array.push('⎯'); }
 | 
					 | 
				
			||||||
		const totallength = Math.floor(data.length_seconds / 60) + ':' + (data.length_seconds - (Math.floor(data.length_seconds / 60) * 60))
 | 
					 | 
				
			||||||
		const timeins = serverQueue.connection.dispatcher.time / 1000
 | 
					 | 
				
			||||||
		const timepassed = Math.floor(timeins / 60) + ':' + Math.round(timeins - (Math.floor(timeins / 60) * 60))
 | 
					 | 
				
			||||||
		const embed = new RichEmbed()
 | 
					 | 
				
			||||||
			.setTitle("__Now playing__")
 | 
					 | 
				
			||||||
			.setDescription(`🎶**Now playing:** ${serverQueue.songs[0].title}\n${array.join('')} | \`${timepassed} / ${totallength}\``)
 | 
					 | 
				
			||||||
			.setColor("#b50002")
 | 
					 | 
				
			||||||
		return message.channel.send(embed);
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
};
 | 
					 | 
				
			||||||
@@ -1,65 +0,0 @@
 | 
				
			|||||||
const YouTube = require("simple-youtube-api");
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
module.exports = {
 | 
					 | 
				
			||||||
    name: 'p',
 | 
					 | 
				
			||||||
    description: 'Play command.',
 | 
					 | 
				
			||||||
    usage: '[song name]',
 | 
					 | 
				
			||||||
    args: true,
 | 
					 | 
				
			||||||
    cooldown: 3,
 | 
					 | 
				
			||||||
    async execute(message, args, client, RichEmbed) {
 | 
					 | 
				
			||||||
        const youtube = new YouTube(client.config.apikey);
 | 
					 | 
				
			||||||
        const searchString = args.slice(1).join(" ");
 | 
					 | 
				
			||||||
        const url = args[1] ? args[1].replace(/<(.+)>/g, "$1") : "";
 | 
					 | 
				
			||||||
        const serverQueue = client.queue.get(message.guild.id);
 | 
					 | 
				
			||||||
        const voiceChannel = message.member.voiceChannel;
 | 
					 | 
				
			||||||
        if (!voiceChannel) return message.channel.send(':x: I\'m sorry but you need to be in a voice channel to play music!');
 | 
					 | 
				
			||||||
        if (!args[1]) return message.channel.send(':x: You need to use a link or search for a song!');
 | 
					 | 
				
			||||||
        const permissions = voiceChannel.permissionsFor(message.client.user);
 | 
					 | 
				
			||||||
        if (!permissions.has('CONNECT')) {
 | 
					 | 
				
			||||||
            return message.channel.send(':x: I cannot connect to your voice channel, make sure I have the proper permissions!');
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
        if (!permissions.has('SPEAK')) {
 | 
					 | 
				
			||||||
            return message.channel.send(':x: I cannot speak in this voice channel, make sure I have the proper permissions!');
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
        if (url.match(/^https?:\/\/(www.youtube.com|youtube.com)\/playlist(.*)$/)) {
 | 
					 | 
				
			||||||
            const playlist = await youtube.getPlaylist(url);
 | 
					 | 
				
			||||||
            const videos = await playlist.getVideos();
 | 
					 | 
				
			||||||
            for (const video of Object.values(videos)) {
 | 
					 | 
				
			||||||
                const video2 = await youtube.getVideoByID(video.id);
 | 
					 | 
				
			||||||
                await client.handleVideo(video2, message, voiceChannel, true);
 | 
					 | 
				
			||||||
            }
 | 
					 | 
				
			||||||
            return message.channel.send(`:white_check_mark: Playlist: **${playlist.title}** has been added to the queue!`);
 | 
					 | 
				
			||||||
        } else {
 | 
					 | 
				
			||||||
            try {
 | 
					 | 
				
			||||||
                var video = await youtube.getVideo(url);
 | 
					 | 
				
			||||||
            } catch (error) {
 | 
					 | 
				
			||||||
                try {
 | 
					 | 
				
			||||||
                    var videos = await youtube.searchVideos(searchString, 10);
 | 
					 | 
				
			||||||
                    let index = 0;
 | 
					 | 
				
			||||||
                    const embed = new RichEmbed()
 | 
					 | 
				
			||||||
                        .setTitle("__Song Selection__")
 | 
					 | 
				
			||||||
                        .setDescription(`${videos.map(video2 => `**${++index}** \`${video2.title}\` `).join('\n')}`)
 | 
					 | 
				
			||||||
                        .setFooter("Please provide a number ranging from 1-10 to select one of the search results.")
 | 
					 | 
				
			||||||
                        .setColor("#b50002")
 | 
					 | 
				
			||||||
                    message.channel.send(embed);
 | 
					 | 
				
			||||||
                    try {
 | 
					 | 
				
			||||||
                        var response = await message.channel.awaitMessages(message2 => message2.content > 0 && message2.content < 11, {
 | 
					 | 
				
			||||||
                            maxMatches: 1,
 | 
					 | 
				
			||||||
                            time: 10000,
 | 
					 | 
				
			||||||
                            errors: ['time']
 | 
					 | 
				
			||||||
                        });
 | 
					 | 
				
			||||||
                    } catch (err) {
 | 
					 | 
				
			||||||
                        console.error(err);
 | 
					 | 
				
			||||||
                        return Message.channel.send(':x: Cancelling video selection.');
 | 
					 | 
				
			||||||
                    }
 | 
					 | 
				
			||||||
                    const videoIndex = parseInt(response.first().content);
 | 
					 | 
				
			||||||
                    var video = await youtube.getVideoByID(videos[videoIndex - 1].id);
 | 
					 | 
				
			||||||
                } catch (err) {
 | 
					 | 
				
			||||||
                    console.error(err);
 | 
					 | 
				
			||||||
                    return message.channel.send(':x: I could not obtain any search results.');
 | 
					 | 
				
			||||||
                }
 | 
					 | 
				
			||||||
            }
 | 
					 | 
				
			||||||
            return client.handleVideo(video, message, voiceChannel);
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
};
 | 
					 | 
				
			||||||
@@ -1,8 +0,0 @@
 | 
				
			|||||||
module.exports = {
 | 
					 | 
				
			||||||
    name: 'ping',
 | 
					 | 
				
			||||||
    description: 'Ping command.',
 | 
					 | 
				
			||||||
    cooldown: 5,
 | 
					 | 
				
			||||||
    execute(message, args, client, RichEmbed) {
 | 
					 | 
				
			||||||
        return message.channel.send(`My current Ping: **${Math.floor(client.ping * 10) / 10} ms**.`);
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
};
 | 
					 | 
				
			||||||
@@ -38,7 +38,7 @@ module.exports = {
 | 
				
			|||||||
					let index = 0;
 | 
										let index = 0;
 | 
				
			||||||
					const embed = new RichEmbed()
 | 
										const embed = new RichEmbed()
 | 
				
			||||||
						.setTitle("__Song Selection__")
 | 
											.setTitle("__Song Selection__")
 | 
				
			||||||
						.setDescription(`${videos.map(video2 => `**${++index}** \`${video2.title}\` `).join('\n')}`)
 | 
											.setDescription(`${videos.map(video2 => `**${++index}** ${video2.title} `).join('\n')}`)
 | 
				
			||||||
						.setFooter("Please provide a number ranging from 1-10 to select one of the search results.")
 | 
											.setFooter("Please provide a number ranging from 1-10 to select one of the search results.")
 | 
				
			||||||
						.setColor("#b50002")
 | 
											.setColor("#b50002")
 | 
				
			||||||
					message.channel.send(embed);
 | 
										message.channel.send(embed);
 | 
				
			||||||
@@ -59,7 +59,7 @@ module.exports = {
 | 
				
			|||||||
					return message.channel.send(':x: I could not obtain any search results.');
 | 
										return message.channel.send(':x: I could not obtain any search results.');
 | 
				
			||||||
				}
 | 
									}
 | 
				
			||||||
			}
 | 
								}
 | 
				
			||||||
			return client.handleVideo(video, message, voiceChannel);
 | 
								return client.funcs.handleVideo(video, message, voiceChannel, client);
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
@@ -1,28 +0,0 @@
 | 
				
			|||||||
module.exports = {
 | 
					 | 
				
			||||||
    name: 'q',
 | 
					 | 
				
			||||||
    description: 'Queue command.',
 | 
					 | 
				
			||||||
    cooldown: 5,
 | 
					 | 
				
			||||||
    async execute(message, args, client, RichEmbed) {
 | 
					 | 
				
			||||||
        const serverQueue = client.queue.get(message.guild.id);
 | 
					 | 
				
			||||||
        if (!serverQueue) return message.channel.send(':x: There is nothing playing.');
 | 
					 | 
				
			||||||
        if (args[1]) {
 | 
					 | 
				
			||||||
            if (isNaN(args[1])) return msg.channel.send(':x: I\'m sorry, But you need to enter a valid __number__.');
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
        let page = parseInt(args[1]);
 | 
					 | 
				
			||||||
        if (!page) page = 1;
 | 
					 | 
				
			||||||
        let pagetext = `:page_facing_up: Page: ${page} :page_facing_up:`
 | 
					 | 
				
			||||||
        if (page === 1) pagetext = ':arrow_down: Next in queue :arrow_down:'
 | 
					 | 
				
			||||||
        let queuesongs = serverQueue.songs.slice((page - 1) * 20 + 1, page * 20 + 1);
 | 
					 | 
				
			||||||
        let queuemessage = `${queuesongs.map(song => `**#** ${song.title}`).join('\n')}`
 | 
					 | 
				
			||||||
        const hashs = queuemessage.split('**#**').length;
 | 
					 | 
				
			||||||
        for (let i = 0; i < hashs; i++) {
 | 
					 | 
				
			||||||
            queuemessage = queuemessage.replace('**#**', `**${i + 1}**`);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
        const embed = new RichEmbed()
 | 
					 | 
				
			||||||
            .setTitle("__Song queue__")
 | 
					 | 
				
			||||||
            .setDescription(`**Now playing:** ${serverQueue.songs[0].title}🎶\n${pagetext}\n${queuemessage}`)
 | 
					 | 
				
			||||||
            .setColor("#b50002")
 | 
					 | 
				
			||||||
        return message.channel.send(embed);
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
};
 | 
					 | 
				
			||||||
@@ -1,17 +0,0 @@
 | 
				
			|||||||
module.exports = {
 | 
					 | 
				
			||||||
    name: 's',
 | 
					 | 
				
			||||||
    description: 'Skip command.',
 | 
					 | 
				
			||||||
    cooldown: 5,
 | 
					 | 
				
			||||||
    execute(message, args, client, RichEmbed) {
 | 
					 | 
				
			||||||
        const { voiceChannel } = message.member;
 | 
					 | 
				
			||||||
        const serverQueue = client.queue.get(message.guild.id);
 | 
					 | 
				
			||||||
        const permissions = message.channel.permissionsFor(message.author);
 | 
					 | 
				
			||||||
        if (!serverQueue) return message.channel.send(':x: There is nothing playing that I could skip for you.');
 | 
					 | 
				
			||||||
        if (message.author.id !== '360363051792203779') {
 | 
					 | 
				
			||||||
            if (!voiceChannel) return message.channel.send(':x: I\'m sorry but you need to be in a voice channel to skip songs!');
 | 
					 | 
				
			||||||
            if (!permissions.has('MANAGE_MESSAGES')) return message.channel.send(':x: You need the `MANAGE_MESSAGES` permission to skip songs!');
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
        message.channel.send(':fast_forward: Skipped the song for you!');
 | 
					 | 
				
			||||||
        serverQueue.connection.dispatcher.end('Skip command has been used!');
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
};
 | 
					 | 
				
			||||||
@@ -2,13 +2,18 @@ module.exports = {
 | 
				
			|||||||
  name: 'settings',
 | 
					  name: 'settings',
 | 
				
			||||||
  usage: '[setting]',
 | 
					  usage: '[setting]',
 | 
				
			||||||
  description: 'Change the settings',
 | 
					  description: 'Change the settings',
 | 
				
			||||||
  cooldown: 5,
 | 
					  cooldown: 10,
 | 
				
			||||||
  async execute(message, args, client, RichEmbed, prefix) {
 | 
					  async execute(message, args, client, RichEmbed, prefix) {
 | 
				
			||||||
    const permissions = message.channel.permissionsFor(message.author);
 | 
					    const permissions = message.channel.permissionsFor(message.author);
 | 
				
			||||||
    if (message.author.id !== '360363051792203779') {
 | 
					    if (message.author.id !== '360363051792203779') {
 | 
				
			||||||
      if (!permissions.has('MANAGE_GUILD')) return message.channel.send(':x: You need the `MANAGE_SERVER` permission to change the settings!');
 | 
					      if (!permissions.has('MANAGE_GUILD')) return message.channel.send(':x: You need the `MANAGE_SERVER` permission to change the settings!');
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
    if (!args[1]) {
 | 
					    if (args[1] === 'prefix') {
 | 
				
			||||||
 | 
					      if (!args[2]) return message.channel.send(':x: You need to define the prefix!');
 | 
				
			||||||
 | 
					      if (args[2].length > 5) return message.channel.send(':x: The prefix must be less than or equal to 5 characters');
 | 
				
			||||||
 | 
					      await client.setPrefix(args[2], message.guild.id);
 | 
				
			||||||
 | 
					      message.channel.send(`:white_check_mark: New prefix set to: \`${args[2]}\`\n`);
 | 
				
			||||||
 | 
					    } else {
 | 
				
			||||||
      const embed = new RichEmbed()
 | 
					      const embed = new RichEmbed()
 | 
				
			||||||
        .setTitle('Guild settings for Musix')
 | 
					        .setTitle('Guild settings for Musix')
 | 
				
			||||||
        .addField('prefix', 'Change the guild specific prefix.', true)
 | 
					        .addField('prefix', 'Change the guild specific prefix.', true)
 | 
				
			||||||
@@ -17,11 +22,5 @@ module.exports = {
 | 
				
			|||||||
        .setColor('#b50002')
 | 
					        .setColor('#b50002')
 | 
				
			||||||
      return message.channel.send(embed);
 | 
					      return message.channel.send(embed);
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
    if (args[1] === 'prefix') {
 | 
					 | 
				
			||||||
      if (!args[2]) return message.channel.send(':x: You need to define the prefix!');
 | 
					 | 
				
			||||||
      if (args[2].length > 5) return message.channel.send(':x: The prefix must be less than or equal to 5 characters');
 | 
					 | 
				
			||||||
      await client.setPrefix(args[2], message.guild.id);
 | 
					 | 
				
			||||||
      message.channel.send(`:white_check_mark: New prefix set: \`${args[2]}\`\n${client.global.replies.fiveMinutes}`);
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
  },
 | 
					  },
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
							
								
								
									
										37
									
								
								commands/status.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										37
									
								
								commands/status.js
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,37 @@
 | 
				
			|||||||
 | 
					module.exports = {
 | 
				
			||||||
 | 
					    name: 'status',
 | 
				
			||||||
 | 
					    description: 'Status command.',
 | 
				
			||||||
 | 
					    cooldown: 5,
 | 
				
			||||||
 | 
					    execute(message, args, client, RichEmbed) {
 | 
				
			||||||
 | 
					        let rawUptime = client.uptime;
 | 
				
			||||||
 | 
					        let uptime = {};
 | 
				
			||||||
 | 
					        uptime['d'] = rawUptime / 86400000;
 | 
				
			||||||
 | 
					        uptime['h'] = rawUptime / 3600000;
 | 
				
			||||||
 | 
					        uptime['m'] = rawUptime / 60000;
 | 
				
			||||||
 | 
					        let finalUptime;
 | 
				
			||||||
 | 
					        if (uptime.d < 1) {
 | 
				
			||||||
 | 
					            finalUptime = `${Math.round(uptime.h * 10) / 10} hours`;
 | 
				
			||||||
 | 
					        } else {
 | 
				
			||||||
 | 
					            finalUptime = `${Math.round(uptime.d * 10) / 10} days`;
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					        let onlinehost = process.env.hosted;
 | 
				
			||||||
 | 
					        let hosted = process.env.hosted;
 | 
				
			||||||
 | 
					        if (onlinehost !== undefined) {
 | 
				
			||||||
 | 
					            hosted = 'Online';
 | 
				
			||||||
 | 
					        } else {
 | 
				
			||||||
 | 
					            hosted = 'Locally';
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					        let ping = Math.floor(client.ping * 10) / 10;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        const embed = new RichEmbed()
 | 
				
			||||||
 | 
					            .setTitle(`Status for ${client.user.username}`)
 | 
				
			||||||
 | 
					            .addField(':signal_strength: Ping', ping, true)
 | 
				
			||||||
 | 
					            .addField(':stopwatch: Uptime', finalUptime, true)
 | 
				
			||||||
 | 
					            .addField(`:play_pause: Currently playing music on ${client.voiceConnections.size} guilds.`, `Of ${client.guilds.size} Guilds.`, true)
 | 
				
			||||||
 | 
					            .addField(':satellite: Currently hosted', hosted, true)
 | 
				
			||||||
 | 
					            .addField(`💿 Operating system`, process.platform, true)
 | 
				
			||||||
 | 
					            .setAuthor(client.user.username, client.user.displayAvatarURL)
 | 
				
			||||||
 | 
					            .setColor('#b50002')
 | 
				
			||||||
 | 
					        return message.channel.send(embed);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
							
								
								
									
										9
									
								
								events/guildcreate.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								events/guildcreate.js
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,9 @@
 | 
				
			|||||||
 | 
					module.exports = {
 | 
				
			||||||
 | 
					    name: 'guildcreate',
 | 
				
			||||||
 | 
					    async execute(client, guild) {
 | 
				
			||||||
 | 
					        musix.user.setActivity(`music to ${client.users.size} users!`, { type: 'PLAYING' });
 | 
				
			||||||
 | 
					        client.db.collection('musix_guilds').doc(guild.id).set({
 | 
				
			||||||
 | 
					            musix_prefix: '>',
 | 
				
			||||||
 | 
					        });
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										6
									
								
								events/guilddelete.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								events/guilddelete.js
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
				
			|||||||
 | 
					module.exports = {
 | 
				
			||||||
 | 
					    name: 'guilddelete',
 | 
				
			||||||
 | 
					    async execute(client, guild) {
 | 
				
			||||||
 | 
					        musix.user.setActivity(`music to ${client.users.size} users!`, { type: 'PLAYING' });
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										6
									
								
								events/guildmemberadd.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								events/guildmemberadd.js
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
				
			|||||||
 | 
					module.exports = {
 | 
				
			||||||
 | 
					    name: 'guildmeberadd',
 | 
				
			||||||
 | 
					    async execute(client) {
 | 
				
			||||||
 | 
					        musix.user.setActivity(`music to ${client.users.size} users!`, { type: 'PLAYING' });
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										6
									
								
								events/guildmemberremove.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								events/guildmemberremove.js
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
				
			|||||||
 | 
					module.exports = {
 | 
				
			||||||
 | 
					    name: 'guildmeberremove',
 | 
				
			||||||
 | 
					    async execute(client) {
 | 
				
			||||||
 | 
					        musix.user.setActivity(`music to ${client.users.size} users!`, { type: 'PLAYING' });
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										42
									
								
								events/message.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										42
									
								
								events/message.js
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,42 @@
 | 
				
			|||||||
 | 
					module.exports = {
 | 
				
			||||||
 | 
					    name: 'message',
 | 
				
			||||||
 | 
					    async execute(client, message) {
 | 
				
			||||||
 | 
					        const { Discord, RichEmbed } = require('discord.js');
 | 
				
			||||||
 | 
					        const fs = require('fs');
 | 
				
			||||||
 | 
					        if (message.author.bot || !message.guild) return;
 | 
				
			||||||
 | 
					        const prefix = client.global.db.musix_guilds[message.guild.id].musix_prefix;
 | 
				
			||||||
 | 
					        if (message.mentions.users.first()) {
 | 
				
			||||||
 | 
					            if (message.mentions.users.first().id === '607266889537945605') return message.channel.send(`My prefix on this server is \`${prefix}\` !`);
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					        if (!message.content.startsWith(prefix)) return;
 | 
				
			||||||
 | 
					        const args = message.content.slice(prefix.length).split(' ');
 | 
				
			||||||
 | 
					        if (!args[0]) return;
 | 
				
			||||||
 | 
					        let commandName = args[0].toLowerCase();
 | 
				
			||||||
 | 
					        if (commandName === `p`) {
 | 
				
			||||||
 | 
					            commandName = 'play';
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					        if (commandName === 'q') {
 | 
				
			||||||
 | 
					            commandName = 'queue';
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					        if (commandName === 's') {
 | 
				
			||||||
 | 
					            commandName = 'skip';
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					        if (commandName === 'np') {
 | 
				
			||||||
 | 
					            commandName = 'nowplaying';
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					        const command = client.commands.get(commandName) || client.commands.find(cmd => cmd.aliases && cmd.aliases.includes(commandName));
 | 
				
			||||||
 | 
					        const permissions = message.channel.permissionsFor(message.client.user);
 | 
				
			||||||
 | 
					        if (!permissions.has('EMBED_LINKS')) return message.channel.send(':x: I cannot send embeds (Embed links), make sure I have the proper permissions!');
 | 
				
			||||||
 | 
					        if (!command && message.content !== `${prefix}`) return;
 | 
				
			||||||
 | 
					        try {
 | 
				
			||||||
 | 
					            command.execute(message, args, client, RichEmbed, prefix);
 | 
				
			||||||
 | 
					        } catch (error) {
 | 
				
			||||||
 | 
					            message.reply(':x: there was an error trying to execute that command!');
 | 
				
			||||||
 | 
					            const embed = new Discord.RichEmbed()
 | 
				
			||||||
 | 
					                .setTitle(`Musix ${error.toString()}`)
 | 
				
			||||||
 | 
					                .setDescription(error.stack.replace(/at /g, '**at **'))
 | 
				
			||||||
 | 
					                .setColor('#b50002');
 | 
				
			||||||
 | 
					            client.fetchUser('360363051792203779').then(user => user.send(embed)).catch(console.error);
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										18
									
								
								events/ready.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										18
									
								
								events/ready.js
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,18 @@
 | 
				
			|||||||
 | 
					module.exports = {
 | 
				
			||||||
 | 
					    name: 'ready',
 | 
				
			||||||
 | 
					    async execute(client) {
 | 
				
			||||||
 | 
					        const remoteMusixGuildsData = await client.funcs.dbget('guilds', null, client);
 | 
				
			||||||
 | 
					        remoteMusixGuildsData.forEach(guildData => {
 | 
				
			||||||
 | 
					            client.global.db.musix_guilds[guildData.id] = guildData.d;
 | 
				
			||||||
 | 
					        });
 | 
				
			||||||
 | 
					        await client.user.setActivity(`music to ${client.users.size} users!`, { type: 'PLAYING' });
 | 
				
			||||||
 | 
					        await client.user.setStatus('dnd');
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        setInterval(async () => {
 | 
				
			||||||
 | 
					            client.guilds.forEach(guild => {
 | 
				
			||||||
 | 
					                client.db.collection('guilds').doc(guild.id).set(client.global.db.musix_guilds[guild.id]);
 | 
				
			||||||
 | 
					            });
 | 
				
			||||||
 | 
					            client.global.lastDBwrite = Date.now();
 | 
				
			||||||
 | 
					        }, 1200000);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										42
									
								
								funcs/handleVideo.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										42
									
								
								funcs/handleVideo.js
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,42 @@
 | 
				
			|||||||
 | 
					module.exports = async function (video, message, voiceChannel, client, playlist = false) {
 | 
				
			||||||
 | 
					    const Discord = require('discord.js');
 | 
				
			||||||
 | 
					    let song = {
 | 
				
			||||||
 | 
					        id: video.id,
 | 
				
			||||||
 | 
					        title: Discord.Util.escapeMarkdown(video.title),
 | 
				
			||||||
 | 
					        url: `https://www.youtube.com/watch?v=${video.id}`
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    const serverQueue = client.queue.get(message.guild.id);
 | 
				
			||||||
 | 
					    if (!serverQueue || restartmusic === true) {
 | 
				
			||||||
 | 
					        const queueConstruct = {
 | 
				
			||||||
 | 
					            textChannel: message.channel,
 | 
				
			||||||
 | 
					            voiceChannel: voiceChannel,
 | 
				
			||||||
 | 
					            connection: null,
 | 
				
			||||||
 | 
					            songs: [],
 | 
				
			||||||
 | 
					            volume: 1,
 | 
				
			||||||
 | 
					            playing: true
 | 
				
			||||||
 | 
					        };
 | 
				
			||||||
 | 
					        queueConstruct.songs.push(song);
 | 
				
			||||||
 | 
					        client.queue.set(message.guild.id, queueConstruct);
 | 
				
			||||||
 | 
					        try {
 | 
				
			||||||
 | 
					            var connection = await voiceChannel.join();
 | 
				
			||||||
 | 
					            queueConstruct.connection = connection;
 | 
				
			||||||
 | 
					            client.funcs.play(message.guild, queueConstruct.songs[0], client);
 | 
				
			||||||
 | 
					            if (restartmusic === true) {
 | 
				
			||||||
 | 
					                const serverQueue = client.queue.get(message.guild.id);
 | 
				
			||||||
 | 
					                song = client.config.songs[0];
 | 
				
			||||||
 | 
					                for (var i = 0; i < client.config.songs.length; i++) {
 | 
				
			||||||
 | 
					                    serverQueue.songs.push(client.config.songs[1]);
 | 
				
			||||||
 | 
					                    client.config.songs.shift();
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					        } catch (error) {
 | 
				
			||||||
 | 
					            client.queue.delete(message.guild.id);
 | 
				
			||||||
 | 
					            return message.channel.send(`:x: An error occured: ${error}`);
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					    } else {
 | 
				
			||||||
 | 
					        serverQueue.songs.push(song);
 | 
				
			||||||
 | 
					        if (playlist) return undefined;
 | 
				
			||||||
 | 
					        return message.channel.send(`:white_check_mark: **${song.title}** has been added to the queue!`);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    return undefined;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										29
									
								
								funcs/play.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										29
									
								
								funcs/play.js
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,29 @@
 | 
				
			|||||||
 | 
					module.exports = async function (guild, song, client) {
 | 
				
			||||||
 | 
					    const Discord = require('discord.js');
 | 
				
			||||||
 | 
					    const ytdl = require('ytdl-core');
 | 
				
			||||||
 | 
					    const serverQueue = client.queue.get(guild.id);
 | 
				
			||||||
 | 
					    if (!song) {
 | 
				
			||||||
 | 
					        serverQueue.textChannel.send(':stop_button: Music ended!');
 | 
				
			||||||
 | 
					        serverQueue.voiceChannel.leave();
 | 
				
			||||||
 | 
					        client.queue.delete(guild.id);
 | 
				
			||||||
 | 
					        return;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    const dispatcher = serverQueue.connection
 | 
				
			||||||
 | 
					        .playStream(ytdl(song.url, { quality: `highestaudio`, filter: "audioonly" }), { seek: 0 })
 | 
				
			||||||
 | 
					        .on("end", reason => {
 | 
				
			||||||
 | 
					            if (reason === "Stream is not generating quickly enough.")
 | 
				
			||||||
 | 
					                console.log("Song ended");
 | 
				
			||||||
 | 
					            else console.log(reason);
 | 
				
			||||||
 | 
					            serverQueue.songs.shift();
 | 
				
			||||||
 | 
					            client.funcs.play(guild, serverQueue.songs[0], client);
 | 
				
			||||||
 | 
					        });
 | 
				
			||||||
 | 
					    dispatcher.setVolumeLogarithmic(serverQueue.volume / 5);
 | 
				
			||||||
 | 
					    dispatcher.on("error", error => console.error(error));
 | 
				
			||||||
 | 
					    const data = await Promise.resolve(ytdl.getInfo(serverQueue.songs[0].url));
 | 
				
			||||||
 | 
					    const totallength = Math.floor(data.length_seconds / 60) + ':' + (data.length_seconds - (Math.floor(data.length_seconds / 60) * 60))
 | 
				
			||||||
 | 
					    const embed = new Discord.RichEmbed()
 | 
				
			||||||
 | 
					        .setTitle(`:musical_note: Start playing: **${song.title}**`)
 | 
				
			||||||
 | 
					        .setDescription(`Song duration: \`${totallength}\``)
 | 
				
			||||||
 | 
					        .setColor("#b50002")
 | 
				
			||||||
 | 
					    serverQueue.textChannel.send(embed);
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										6
									
								
								funcs/setPrefix.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								funcs/setPrefix.js
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
				
			|||||||
 | 
					module.exports = async function (newPrefix, guildId) {
 | 
				
			||||||
 | 
					    await client.db.collection('guilds').doc(guildId).set({
 | 
				
			||||||
 | 
					        prefix: newPrefix,
 | 
				
			||||||
 | 
					    }, { merge: true });
 | 
				
			||||||
 | 
					    return 'success';
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										163
									
								
								index.js
									
									
									
									
									
								
							
							
						
						
									
										163
									
								
								index.js
									
									
									
									
									
								
							@@ -1,122 +1,83 @@
 | 
				
			|||||||
const fs = require('fs');
 | 
					const Discord = require('discord.js');
 | 
				
			||||||
const { join } = require('path');
 | 
					 | 
				
			||||||
const { Util } = require('discord.js');
 | 
					 | 
				
			||||||
const { Collection, Client, RichEmbed } = require('discord.js');
 | 
					const { Collection, Client, RichEmbed } = require('discord.js');
 | 
				
			||||||
const client = new Client({ disableEveryone: true, disabledEvents: ['TYPING_START'] });
 | 
					const client = new Discord.Client({ disableEveryone: true, disabledEvents: ['TYPING_START'] });
 | 
				
			||||||
const ytdl = require('ytdl-core');
 | 
					const ytdl = require('ytdl-core');
 | 
				
			||||||
 | 
					const fs = require('fs');
 | 
				
			||||||
 | 
					const dotenv = require('dotenv');
 | 
				
			||||||
 | 
					const firebase = require('firebase/app');
 | 
				
			||||||
 | 
					const admin = require('firebase-admin');
 | 
				
			||||||
 | 
					const serviceAccount = require('./serviceAccount.json');
 | 
				
			||||||
 | 
					require('dotenv/config');
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					admin.initializeApp({
 | 
				
			||||||
 | 
					  credential: admin.credential.cert(serviceAccount),
 | 
				
			||||||
 | 
					});
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					client.db = admin.firestore();
 | 
				
			||||||
 | 
					client.db.FieldValue = require('firebase-admin').firestore.FieldValue;
 | 
				
			||||||
client.commands = new Collection();
 | 
					client.commands = new Collection();
 | 
				
			||||||
 | 
					client.events = new Collection();
 | 
				
			||||||
client.cooldowns = new Collection();
 | 
					client.cooldowns = new Collection();
 | 
				
			||||||
client.queue = new Map();
 | 
					client.queue = new Map();
 | 
				
			||||||
client.config = {
 | 
					client.funcs = {};
 | 
				
			||||||
	token: process.env.BOT_TOKEN,
 | 
					 | 
				
			||||||
	prefix: '-',
 | 
					 | 
				
			||||||
};
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					client.funcs.setPrefix = require('./funcs/setPrefix.js');
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					client.funcs.handleVideo = require('./funcs/handleVideo.js');
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					client.funcs.play = require('./funcs/play.js');
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					client.config = {
 | 
				
			||||||
 | 
					  token: process.env.MUSIX_TOKEN,
 | 
				
			||||||
 | 
					  apikey: process.env.API_KEY,
 | 
				
			||||||
 | 
					  prefix: '>',
 | 
				
			||||||
 | 
					  test: 'success',
 | 
				
			||||||
 | 
					};
 | 
				
			||||||
const commandFiles = fs.readdirSync('./commands/').filter(f => f.endsWith('.js'));
 | 
					const commandFiles = fs.readdirSync('./commands/').filter(f => f.endsWith('.js'));
 | 
				
			||||||
for (const file of commandFiles) {
 | 
					for (const file of commandFiles) {
 | 
				
			||||||
  const command = require(`./commands/${file}`);
 | 
					  const command = require(`./commands/${file}`);
 | 
				
			||||||
  client.commands.set(command.name, command);
 | 
					  client.commands.set(command.name, command);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					const eventFiles = fs.readdirSync('./events/').filter(f => f.endsWith('.js'));
 | 
				
			||||||
 | 
					for (const file of eventFiles) {
 | 
				
			||||||
 | 
					  const event = require(`./events/${file}`);
 | 
				
			||||||
 | 
					  client.events.set(event.name, event);
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
client.on('ready', () => {
 | 
					client.on('ready', async () => {
 | 
				
			||||||
	client.user.setActivity('V2 | -help', { type: 'LISTENING' })
 | 
					  const eventName = 'ready';
 | 
				
			||||||
	client.user.setStatus('dnd');
 | 
					  const event = client.events.get(eventName) || client.events.find(ent => ent.aliases && ent.aliases.includes(eventName));
 | 
				
			||||||
 | 
					  event.execute(client);
 | 
				
			||||||
});
 | 
					});
 | 
				
			||||||
 | 
					
 | 
				
			||||||
client.on('message', message => {
 | 
					client.on('message', message => {
 | 
				
			||||||
	if (!message.content.startsWith(client.config.prefix) || message.author.bot) return;
 | 
					  const eventName = 'message';
 | 
				
			||||||
	const args = message.content.slice(client.config.prefix.length).split(' ');
 | 
					  const event = client.events.get(eventName) || client.events.find(ent => ent.aliases && ent.aliases.includes(eventName));
 | 
				
			||||||
	const commandName = args[0].toLowerCase();
 | 
					  event.execute(client, message);
 | 
				
			||||||
	const command = client.commands.get(commandName) || client.commands.find(cmd => cmd.aliases && cmd.aliases.includes(commandName));
 | 
					 | 
				
			||||||
	if (!command && message.content !== `${client.config.prefix}`) return message.channel.send(`:x: That is not a valid command ${message.author}! Type ${client.config.prefix}help for a list of commands!`).then(message => message.delete(3000));
 | 
					 | 
				
			||||||
	if (command.guildOnly && message.channel.type !== 'text') return message.reply(':x: I can\'t execute that command inside DMs!');
 | 
					 | 
				
			||||||
	if (command.args && !args.length) {
 | 
					 | 
				
			||||||
		let reply = `:x: You didn't provide any arguments, ${message.author}!`;
 | 
					 | 
				
			||||||
		if (command.usage) reply += `\nThe proper usage would be: \`${client.config.prefix}${command.name} ${command.usage}\``;
 | 
					 | 
				
			||||||
		return message.channel.send(reply);
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	if (!client.cooldowns.has(command.name)) {
 | 
					 | 
				
			||||||
		client.cooldowns.set(command.name, new Collection());
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	const now = Date.now();
 | 
					 | 
				
			||||||
	const timestamps = client.cooldowns.get(command.name);
 | 
					 | 
				
			||||||
	const cooldownAmount = (command.cooldown || 3) * 1000;
 | 
					 | 
				
			||||||
	if (timestamps.has(message.author.id)) {
 | 
					 | 
				
			||||||
		const expirationTime = timestamps.get(message.author.id) + cooldownAmount;
 | 
					 | 
				
			||||||
		if (now < expirationTime) {
 | 
					 | 
				
			||||||
			const timeLeft = (expirationTime - now) / 1000;
 | 
					 | 
				
			||||||
			return message.reply(`:hourglass_flowing_sand: please wait ${timeLeft.toFixed(1)} more second(s) before reusing the \`${command.name}\` command.`).then(message => message.delete(3000));
 | 
					 | 
				
			||||||
		}
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	timestamps.set(message.author.id, now);
 | 
					 | 
				
			||||||
	setTimeout(() => timestamps.delete(message.author.id), cooldownAmount);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	try {
 | 
					 | 
				
			||||||
		command.execute(message, args, client, RichEmbed);
 | 
					 | 
				
			||||||
	} catch (error) {
 | 
					 | 
				
			||||||
		console.error(error);
 | 
					 | 
				
			||||||
		message.reply(':x: there was an error trying to execute that command!');
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
});
 | 
					});
 | 
				
			||||||
 | 
					
 | 
				
			||||||
client.handleVideo = async function (video, message, voiceChannel, playlist = false) {
 | 
					client.on('guildCreate', async (guild) => {
 | 
				
			||||||
	const serverQueue = client.queue.get(message.guild.id);
 | 
					  const eventName = 'guildcreate';
 | 
				
			||||||
	const song = {
 | 
					  const event = client.events.get(eventName) || client.events.find(ent => ent.aliases && ent.aliases.includes(eventName));
 | 
				
			||||||
		id: video.id,
 | 
					  event.execute(client, guild);
 | 
				
			||||||
		title: Util.escapeMarkdown(video.title),
 | 
					});
 | 
				
			||||||
		url: `https://www.youtube.com/watch?v=${video.id}`
 | 
					 | 
				
			||||||
	};
 | 
					 | 
				
			||||||
	if (!serverQueue) {
 | 
					 | 
				
			||||||
		const queueConstruct = {
 | 
					 | 
				
			||||||
			textChannel: message.channel,
 | 
					 | 
				
			||||||
			voiceChannel: voiceChannel,
 | 
					 | 
				
			||||||
			connection: null,
 | 
					 | 
				
			||||||
			songs: [],
 | 
					 | 
				
			||||||
			volume: 5,
 | 
					 | 
				
			||||||
			playing: true
 | 
					 | 
				
			||||||
		};
 | 
					 | 
				
			||||||
		queueConstruct.songs.push(song);
 | 
					 | 
				
			||||||
		client.queue.set(message.guild.id, queueConstruct);
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					client.on('guildDelete', (guild) => {
 | 
				
			||||||
 | 
					  const eventName = 'guilddelete';
 | 
				
			||||||
 | 
					  const event = client.events.get(eventName) || client.events.find(ent => ent.aliases && ent.aliases.includes(eventName));
 | 
				
			||||||
 | 
					  event.execute(client, guild);
 | 
				
			||||||
 | 
					});
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		try {
 | 
					client.on('guildMemberRemove', () => {
 | 
				
			||||||
			var connection = await voiceChannel.join();
 | 
					  const eventName = 'guildmemberremove';
 | 
				
			||||||
			queueConstruct.connection = connection;
 | 
					  const event = client.events.get(eventName) || client.events.find(ent => ent.aliases && ent.aliases.includes(eventName));
 | 
				
			||||||
			play(message.guild, queueConstruct.songs[0]);
 | 
					  event.execute(client);
 | 
				
			||||||
		} catch (error) {
 | 
					});
 | 
				
			||||||
			console.error(`I could not join the voice channel: ${error}`);
 | 
					 | 
				
			||||||
			client.queue.delete(message.guild.id);
 | 
					 | 
				
			||||||
			return message.channel.send(`:x: I could not join the voice channel: ${error}`);
 | 
					 | 
				
			||||||
		}
 | 
					 | 
				
			||||||
	} else {
 | 
					 | 
				
			||||||
		serverQueue.songs.push(song);
 | 
					 | 
				
			||||||
		if (playlist) return undefined;
 | 
					 | 
				
			||||||
		else
 | 
					 | 
				
			||||||
			return message.channel.send(`:white_check_mark: **${song.title}** has been added to the queue!`);
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	return undefined;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
function play(guild, song) {
 | 
					client.on('guildMemberAdd', () => {
 | 
				
			||||||
	const serverQueue = client.queue.get(guild.id);
 | 
					  const eventName = 'guildmemberadd';
 | 
				
			||||||
	if (!song) {
 | 
					  const event = client.events.get(eventName) || client.events.find(ent => ent.aliases && ent.aliases.includes(eventName));
 | 
				
			||||||
		serverQueue.voiceChannel.leave();
 | 
					  event.execute(client);
 | 
				
			||||||
		client.queue.delete(guild.id);
 | 
					});
 | 
				
			||||||
		return;
 | 
					 | 
				
			||||||
	}
 | 
					 | 
				
			||||||
	const dispatcher = serverQueue.connection
 | 
					 | 
				
			||||||
		.playStream(ytdl(song.url, { quality: `highestaudio`, filter: "audioonly" }), { seek: 0 })
 | 
					 | 
				
			||||||
		.on("end", reason => {
 | 
					 | 
				
			||||||
			if (reason === "Stream is not generating quickly enough.")
 | 
					 | 
				
			||||||
				console.log("Song ended");
 | 
					 | 
				
			||||||
			else console.log(reason);
 | 
					 | 
				
			||||||
			serverQueue.songs.shift();
 | 
					 | 
				
			||||||
			play(guild, serverQueue.songs[0]);
 | 
					 | 
				
			||||||
		})
 | 
					 | 
				
			||||||
	dispatcher.setVolumeLogarithmic(1 / 5);
 | 
					 | 
				
			||||||
	serverQueue.volume = 1
 | 
					 | 
				
			||||||
	dispatcher.on("error", error => console.error(error));
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	serverQueue.textChannel.send(`:musical_note: Start playing: **${song.title}**`);
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
client.login(client.config.token);
 | 
					client.login(client.config.token);
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										15
									
								
								node_modules/.bin/sshpk-conv
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										15
									
								
								node_modules/.bin/sshpk-conv
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,15 +0,0 @@
 | 
				
			|||||||
#!/bin/sh
 | 
					 | 
				
			||||||
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
case `uname` in
 | 
					 | 
				
			||||||
    *CYGWIN*) basedir=`cygpath -w "$basedir"`;;
 | 
					 | 
				
			||||||
esac
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
if [ -x "$basedir/node" ]; then
 | 
					 | 
				
			||||||
  "$basedir/node"  "$basedir/../sshpk/bin/sshpk-conv" "$@"
 | 
					 | 
				
			||||||
  ret=$?
 | 
					 | 
				
			||||||
else 
 | 
					 | 
				
			||||||
  node  "$basedir/../sshpk/bin/sshpk-conv" "$@"
 | 
					 | 
				
			||||||
  ret=$?
 | 
					 | 
				
			||||||
fi
 | 
					 | 
				
			||||||
exit $ret
 | 
					 | 
				
			||||||
							
								
								
									
										7
									
								
								node_modules/.bin/sshpk-conv.cmd
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										7
									
								
								node_modules/.bin/sshpk-conv.cmd
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,7 +0,0 @@
 | 
				
			|||||||
@IF EXIST "%~dp0\node.exe" (
 | 
					 | 
				
			||||||
  "%~dp0\node.exe"  "%~dp0\..\sshpk\bin\sshpk-conv" %*
 | 
					 | 
				
			||||||
) ELSE (
 | 
					 | 
				
			||||||
  @SETLOCAL
 | 
					 | 
				
			||||||
  @SET PATHEXT=%PATHEXT:;.JS;=;%
 | 
					 | 
				
			||||||
  node  "%~dp0\..\sshpk\bin\sshpk-conv" %*
 | 
					 | 
				
			||||||
)
 | 
					 | 
				
			||||||
							
								
								
									
										15
									
								
								node_modules/.bin/sshpk-sign
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										15
									
								
								node_modules/.bin/sshpk-sign
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,15 +0,0 @@
 | 
				
			|||||||
#!/bin/sh
 | 
					 | 
				
			||||||
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
case `uname` in
 | 
					 | 
				
			||||||
    *CYGWIN*) basedir=`cygpath -w "$basedir"`;;
 | 
					 | 
				
			||||||
esac
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
if [ -x "$basedir/node" ]; then
 | 
					 | 
				
			||||||
  "$basedir/node"  "$basedir/../sshpk/bin/sshpk-sign" "$@"
 | 
					 | 
				
			||||||
  ret=$?
 | 
					 | 
				
			||||||
else 
 | 
					 | 
				
			||||||
  node  "$basedir/../sshpk/bin/sshpk-sign" "$@"
 | 
					 | 
				
			||||||
  ret=$?
 | 
					 | 
				
			||||||
fi
 | 
					 | 
				
			||||||
exit $ret
 | 
					 | 
				
			||||||
							
								
								
									
										7
									
								
								node_modules/.bin/sshpk-sign.cmd
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										7
									
								
								node_modules/.bin/sshpk-sign.cmd
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,7 +0,0 @@
 | 
				
			|||||||
@IF EXIST "%~dp0\node.exe" (
 | 
					 | 
				
			||||||
  "%~dp0\node.exe"  "%~dp0\..\sshpk\bin\sshpk-sign" %*
 | 
					 | 
				
			||||||
) ELSE (
 | 
					 | 
				
			||||||
  @SETLOCAL
 | 
					 | 
				
			||||||
  @SET PATHEXT=%PATHEXT:;.JS;=;%
 | 
					 | 
				
			||||||
  node  "%~dp0\..\sshpk\bin\sshpk-sign" %*
 | 
					 | 
				
			||||||
)
 | 
					 | 
				
			||||||
							
								
								
									
										15
									
								
								node_modules/.bin/sshpk-verify
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										15
									
								
								node_modules/.bin/sshpk-verify
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,15 +0,0 @@
 | 
				
			|||||||
#!/bin/sh
 | 
					 | 
				
			||||||
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
case `uname` in
 | 
					 | 
				
			||||||
    *CYGWIN*) basedir=`cygpath -w "$basedir"`;;
 | 
					 | 
				
			||||||
esac
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
if [ -x "$basedir/node" ]; then
 | 
					 | 
				
			||||||
  "$basedir/node"  "$basedir/../sshpk/bin/sshpk-verify" "$@"
 | 
					 | 
				
			||||||
  ret=$?
 | 
					 | 
				
			||||||
else 
 | 
					 | 
				
			||||||
  node  "$basedir/../sshpk/bin/sshpk-verify" "$@"
 | 
					 | 
				
			||||||
  ret=$?
 | 
					 | 
				
			||||||
fi
 | 
					 | 
				
			||||||
exit $ret
 | 
					 | 
				
			||||||
							
								
								
									
										7
									
								
								node_modules/.bin/sshpk-verify.cmd
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										7
									
								
								node_modules/.bin/sshpk-verify.cmd
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,7 +0,0 @@
 | 
				
			|||||||
@IF EXIST "%~dp0\node.exe" (
 | 
					 | 
				
			||||||
  "%~dp0\node.exe"  "%~dp0\..\sshpk\bin\sshpk-verify" %*
 | 
					 | 
				
			||||||
) ELSE (
 | 
					 | 
				
			||||||
  @SETLOCAL
 | 
					 | 
				
			||||||
  @SET PATHEXT=%PATHEXT:;.JS;=;%
 | 
					 | 
				
			||||||
  node  "%~dp0\..\sshpk\bin\sshpk-verify" %*
 | 
					 | 
				
			||||||
)
 | 
					 | 
				
			||||||
							
								
								
									
										15
									
								
								node_modules/.bin/uuid
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										15
									
								
								node_modules/.bin/uuid
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,15 +0,0 @@
 | 
				
			|||||||
#!/bin/sh
 | 
					 | 
				
			||||||
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
case `uname` in
 | 
					 | 
				
			||||||
    *CYGWIN*) basedir=`cygpath -w "$basedir"`;;
 | 
					 | 
				
			||||||
esac
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
if [ -x "$basedir/node" ]; then
 | 
					 | 
				
			||||||
  "$basedir/node"  "$basedir/../uuid/bin/uuid" "$@"
 | 
					 | 
				
			||||||
  ret=$?
 | 
					 | 
				
			||||||
else 
 | 
					 | 
				
			||||||
  node  "$basedir/../uuid/bin/uuid" "$@"
 | 
					 | 
				
			||||||
  ret=$?
 | 
					 | 
				
			||||||
fi
 | 
					 | 
				
			||||||
exit $ret
 | 
					 | 
				
			||||||
							
								
								
									
										7
									
								
								node_modules/.bin/uuid.cmd
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										7
									
								
								node_modules/.bin/uuid.cmd
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,7 +0,0 @@
 | 
				
			|||||||
@IF EXIST "%~dp0\node.exe" (
 | 
					 | 
				
			||||||
  "%~dp0\node.exe"  "%~dp0\..\uuid\bin\uuid" %*
 | 
					 | 
				
			||||||
) ELSE (
 | 
					 | 
				
			||||||
  @SETLOCAL
 | 
					 | 
				
			||||||
  @SET PATHEXT=%PATHEXT:;.JS;=;%
 | 
					 | 
				
			||||||
  node  "%~dp0\..\uuid\bin\uuid" %*
 | 
					 | 
				
			||||||
)
 | 
					 | 
				
			||||||
							
								
								
									
										21
									
								
								node_modules/@types/node/LICENSE
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										21
									
								
								node_modules/@types/node/LICENSE
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,21 +0,0 @@
 | 
				
			|||||||
    MIT License
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    Copyright (c) Microsoft Corporation. All rights reserved.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    Permission is hereby granted, free of charge, to any person obtaining a copy
 | 
					 | 
				
			||||||
    of this software and associated documentation files (the "Software"), to deal
 | 
					 | 
				
			||||||
    in the Software without restriction, including without limitation the rights
 | 
					 | 
				
			||||||
    to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 | 
					 | 
				
			||||||
    copies of the Software, and to permit persons to whom the Software is
 | 
					 | 
				
			||||||
    furnished to do so, subject to the following conditions:
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    The above copyright notice and this permission notice shall be included in all
 | 
					 | 
				
			||||||
    copies or substantial portions of the Software.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 | 
					 | 
				
			||||||
    IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 | 
					 | 
				
			||||||
    FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 | 
					 | 
				
			||||||
    AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 | 
					 | 
				
			||||||
    LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 | 
					 | 
				
			||||||
    OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 | 
					 | 
				
			||||||
    SOFTWARE
 | 
					 | 
				
			||||||
							
								
								
									
										16
									
								
								node_modules/@types/node/README.md
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										16
									
								
								node_modules/@types/node/README.md
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,16 +0,0 @@
 | 
				
			|||||||
# Installation
 | 
					 | 
				
			||||||
> `npm install --save @types/node`
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# Summary
 | 
					 | 
				
			||||||
This package contains type definitions for Node.js ( http://nodejs.org/ ).
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# Details
 | 
					 | 
				
			||||||
Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Additional Details
 | 
					 | 
				
			||||||
 * Last updated: Thu, 06 Jun 2019 23:14:22 GMT
 | 
					 | 
				
			||||||
 * Dependencies: none
 | 
					 | 
				
			||||||
 * Global values: Buffer, NodeJS, Symbol, __dirname, __filename, clearImmediate, clearInterval, clearTimeout, console, exports, global, module, process, queueMicrotask, require, setImmediate, setInterval, setTimeout
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
# Credits
 | 
					 | 
				
			||||||
These definitions were written by Microsoft TypeScript <https://github.com/Microsoft>, DefinitelyTyped <https://github.com/DefinitelyTyped>, Alberto Schiabel <https://github.com/jkomyno>, Alexander T. <https://github.com/a-tarasyuk>, Alvis HT Tang <https://github.com/alvis>, Andrew Makarov <https://github.com/r3nya>, Benjamin Toueg <https://github.com/btoueg>, Bruno Scheufler <https://github.com/brunoscheufler>, Chigozirim C. <https://github.com/smac89>, Christian Vaagland Tellnes <https://github.com/tellnes>, David Junger <https://github.com/touffy>, Deividas Bakanas <https://github.com/DeividasBakanas>, Eugene Y. Q. Shen <https://github.com/eyqs>, Flarna <https://github.com/Flarna>, Hannes Magnusson <https://github.com/Hannes-Magnusson-CK>, Hoàng Văn Khải <https://github.com/KSXGitHub>, Huw <https://github.com/hoo29>, Kelvin Jin <https://github.com/kjin>, Klaus Meinhardt <https://github.com/ajafff>, Lishude <https://github.com/islishude>, Mariusz Wiktorczyk <https://github.com/mwiktorczyk>, Matthieu Sieben <https://github.com/matthieusieben>, Mohsen Azimi <https://github.com/mohsen1>, Nicolas Even <https://github.com/n-e>, Nicolas Voigt <https://github.com/octo-sniffle>, Parambir Singh <https://github.com/parambirs>, Sebastian Silbermann <https://github.com/eps1lon>, Simon Schick <https://github.com/SimonSchick>, Thomas den Hollander <https://github.com/ThomasdenH>, Wilco Bakker <https://github.com/WilcoBakker>, wwwy3y3 <https://github.com/wwwy3y3>, Zane Hannan AU <https://github.com/ZaneHannanAU>, Jeremie Rodriguez <https://github.com/jeremiergz>, Samuel Ainsworth <https://github.com/samuela>, Kyle Uehlein <https://github.com/kuehlein>, Jordi Oliveras Rovira <https://github.com/j-oliveras>, Thanik Bhongbhibhat <https://github.com/bhongy>.
 | 
					 | 
				
			||||||
							
								
								
									
										52
									
								
								node_modules/@types/node/assert.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										52
									
								
								node_modules/@types/node/assert.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,52 +0,0 @@
 | 
				
			|||||||
declare module "assert" {
 | 
					 | 
				
			||||||
    function internal(value: any, message?: string | Error): void;
 | 
					 | 
				
			||||||
    namespace internal {
 | 
					 | 
				
			||||||
        class AssertionError implements Error {
 | 
					 | 
				
			||||||
            name: string;
 | 
					 | 
				
			||||||
            message: string;
 | 
					 | 
				
			||||||
            actual: any;
 | 
					 | 
				
			||||||
            expected: any;
 | 
					 | 
				
			||||||
            operator: string;
 | 
					 | 
				
			||||||
            generatedMessage: boolean;
 | 
					 | 
				
			||||||
            code: 'ERR_ASSERTION';
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
            constructor(options?: {
 | 
					 | 
				
			||||||
                message?: string; actual?: any; expected?: any;
 | 
					 | 
				
			||||||
                operator?: string; stackStartFn?: Function
 | 
					 | 
				
			||||||
            });
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        function fail(message?: string | Error): never;
 | 
					 | 
				
			||||||
        /** @deprecated since v10.0.0 - use fail([message]) or other assert functions instead. */
 | 
					 | 
				
			||||||
        function fail(actual: any, expected: any, message?: string | Error, operator?: string, stackStartFn?: Function): never;
 | 
					 | 
				
			||||||
        function ok(value: any, message?: string | Error): void;
 | 
					 | 
				
			||||||
        /** @deprecated since v9.9.0 - use strictEqual() instead. */
 | 
					 | 
				
			||||||
        function equal(actual: any, expected: any, message?: string | Error): void;
 | 
					 | 
				
			||||||
        /** @deprecated since v9.9.0 - use notStrictEqual() instead. */
 | 
					 | 
				
			||||||
        function notEqual(actual: any, expected: any, message?: string | Error): void;
 | 
					 | 
				
			||||||
        /** @deprecated since v9.9.0 - use deepStrictEqual() instead. */
 | 
					 | 
				
			||||||
        function deepEqual(actual: any, expected: any, message?: string | Error): void;
 | 
					 | 
				
			||||||
        /** @deprecated since v9.9.0 - use notDeepStrictEqual() instead. */
 | 
					 | 
				
			||||||
        function notDeepEqual(actual: any, expected: any, message?: string | Error): void;
 | 
					 | 
				
			||||||
        function strictEqual(actual: any, expected: any, message?: string | Error): void;
 | 
					 | 
				
			||||||
        function notStrictEqual(actual: any, expected: any, message?: string | Error): void;
 | 
					 | 
				
			||||||
        function deepStrictEqual(actual: any, expected: any, message?: string | Error): void;
 | 
					 | 
				
			||||||
        function notDeepStrictEqual(actual: any, expected: any, message?: string | Error): void;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        function throws(block: () => any, message?: string | Error): void;
 | 
					 | 
				
			||||||
        function throws(block: () => any, error: RegExp | Function | Object | Error, message?: string | Error): void;
 | 
					 | 
				
			||||||
        function doesNotThrow(block: () => any, message?: string | Error): void;
 | 
					 | 
				
			||||||
        function doesNotThrow(block: () => any, error: RegExp | Function, message?: string | Error): void;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        function ifError(value: any): void;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        function rejects(block: (() => Promise<any>) | Promise<any>, message?: string | Error): Promise<void>;
 | 
					 | 
				
			||||||
        function rejects(block: (() => Promise<any>) | Promise<any>, error: RegExp | Function | Object | Error, message?: string | Error): Promise<void>;
 | 
					 | 
				
			||||||
        function doesNotReject(block: (() => Promise<any>) | Promise<any>, message?: string | Error): Promise<void>;
 | 
					 | 
				
			||||||
        function doesNotReject(block: (() => Promise<any>) | Promise<any>, error: RegExp | Function, message?: string | Error): Promise<void>;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        const strict: typeof internal;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    export = internal;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										132
									
								
								node_modules/@types/node/async_hooks.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										132
									
								
								node_modules/@types/node/async_hooks.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,132 +0,0 @@
 | 
				
			|||||||
/**
 | 
					 | 
				
			||||||
 * Async Hooks module: https://nodejs.org/api/async_hooks.html
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
declare module "async_hooks" {
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * Returns the asyncId of the current execution context.
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    function executionAsyncId(): number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * Returns the ID of the resource responsible for calling the callback that is currently being executed.
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    function triggerAsyncId(): number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface HookCallbacks {
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Called when a class is constructed that has the possibility to emit an asynchronous event.
 | 
					 | 
				
			||||||
         * @param asyncId a unique ID for the async resource
 | 
					 | 
				
			||||||
         * @param type the type of the async resource
 | 
					 | 
				
			||||||
         * @param triggerAsyncId the unique ID of the async resource in whose execution context this async resource was created
 | 
					 | 
				
			||||||
         * @param resource reference to the resource representing the async operation, needs to be released during destroy
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        init?(asyncId: number, type: string, triggerAsyncId: number, resource: Object): void;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * When an asynchronous operation is initiated or completes a callback is called to notify the user.
 | 
					 | 
				
			||||||
         * The before callback is called just before said callback is executed.
 | 
					 | 
				
			||||||
         * @param asyncId the unique identifier assigned to the resource about to execute the callback.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        before?(asyncId: number): void;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Called immediately after the callback specified in before is completed.
 | 
					 | 
				
			||||||
         * @param asyncId the unique identifier assigned to the resource which has executed the callback.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        after?(asyncId: number): void;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Called when a promise has resolve() called. This may not be in the same execution id
 | 
					 | 
				
			||||||
         * as the promise itself.
 | 
					 | 
				
			||||||
         * @param asyncId the unique id for the promise that was resolve()d.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        promiseResolve?(asyncId: number): void;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Called after the resource corresponding to asyncId is destroyed
 | 
					 | 
				
			||||||
         * @param asyncId a unique ID for the async resource
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        destroy?(asyncId: number): void;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface AsyncHook {
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Enable the callbacks for a given AsyncHook instance. If no callbacks are provided enabling is a noop.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        enable(): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Disable the callbacks for a given AsyncHook instance from the global pool of AsyncHook callbacks to be executed. Once a hook has been disabled it will not be called again until enabled.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        disable(): this;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * Registers functions to be called for different lifetime events of each async operation.
 | 
					 | 
				
			||||||
     * @param options the callbacks to register
 | 
					 | 
				
			||||||
     * @return an AsyncHooks instance used for disabling and enabling hooks
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    function createHook(options: HookCallbacks): AsyncHook;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface AsyncResourceOptions {
 | 
					 | 
				
			||||||
      /**
 | 
					 | 
				
			||||||
       * The ID of the execution context that created this async event.
 | 
					 | 
				
			||||||
       * Default: `executionAsyncId()`
 | 
					 | 
				
			||||||
       */
 | 
					 | 
				
			||||||
      triggerAsyncId?: number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      /**
 | 
					 | 
				
			||||||
       * Disables automatic `emitDestroy` when the object is garbage collected.
 | 
					 | 
				
			||||||
       * This usually does not need to be set (even if `emitDestroy` is called
 | 
					 | 
				
			||||||
       * manually), unless the resource's `asyncId` is retrieved and the
 | 
					 | 
				
			||||||
       * sensitive API's `emitDestroy` is called with it.
 | 
					 | 
				
			||||||
       * Default: `false`
 | 
					 | 
				
			||||||
       */
 | 
					 | 
				
			||||||
      requireManualDestroy?: boolean;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * The class AsyncResource was designed to be extended by the embedder's async resources.
 | 
					 | 
				
			||||||
     * Using this users can easily trigger the lifetime events of their own resources.
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    class AsyncResource {
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * AsyncResource() is meant to be extended. Instantiating a
 | 
					 | 
				
			||||||
         * new AsyncResource() also triggers init. If triggerAsyncId is omitted then
 | 
					 | 
				
			||||||
         * async_hook.executionAsyncId() is used.
 | 
					 | 
				
			||||||
         * @param type The type of async event.
 | 
					 | 
				
			||||||
         * @param triggerAsyncId The ID of the execution context that created
 | 
					 | 
				
			||||||
         *   this async event (default: `executionAsyncId()`), or an
 | 
					 | 
				
			||||||
         *   AsyncResourceOptions object (since 9.3)
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        constructor(type: string, triggerAsyncId?: number|AsyncResourceOptions);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Call the provided function with the provided arguments in the
 | 
					 | 
				
			||||||
         * execution context of the async resource. This will establish the
 | 
					 | 
				
			||||||
         * context, trigger the AsyncHooks before callbacks, call the function,
 | 
					 | 
				
			||||||
         * trigger the AsyncHooks after callbacks, and then restore the original
 | 
					 | 
				
			||||||
         * execution context.
 | 
					 | 
				
			||||||
         * @param fn The function to call in the execution context of this
 | 
					 | 
				
			||||||
         *   async resource.
 | 
					 | 
				
			||||||
         * @param thisArg The receiver to be used for the function call.
 | 
					 | 
				
			||||||
         * @param args Optional arguments to pass to the function.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        runInAsyncScope<This, Result>(fn: (this: This, ...args: any[]) => Result, thisArg?: This, ...args: any[]): Result;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Call AsyncHooks destroy callbacks.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        emitDestroy(): void;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * @return the unique ID assigned to this AsyncResource instance.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        asyncId(): number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * @return the trigger ID for this AsyncResource instance.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        triggerAsyncId(): number;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										41
									
								
								node_modules/@types/node/base.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										41
									
								
								node_modules/@types/node/base.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,41 +0,0 @@
 | 
				
			|||||||
// base definnitions for all NodeJS modules that are not specific to any version of TypeScript
 | 
					 | 
				
			||||||
/// <reference path="globals.d.ts" />
 | 
					 | 
				
			||||||
/// <reference path="assert.d.ts" />
 | 
					 | 
				
			||||||
/// <reference path="async_hooks.d.ts" />
 | 
					 | 
				
			||||||
/// <reference path="buffer.d.ts" />
 | 
					 | 
				
			||||||
/// <reference path="child_process.d.ts" />
 | 
					 | 
				
			||||||
/// <reference path="cluster.d.ts" />
 | 
					 | 
				
			||||||
/// <reference path="console.d.ts" />
 | 
					 | 
				
			||||||
/// <reference path="constants.d.ts" />
 | 
					 | 
				
			||||||
/// <reference path="crypto.d.ts" />
 | 
					 | 
				
			||||||
/// <reference path="dgram.d.ts" />
 | 
					 | 
				
			||||||
/// <reference path="dns.d.ts" />
 | 
					 | 
				
			||||||
/// <reference path="domain.d.ts" />
 | 
					 | 
				
			||||||
/// <reference path="events.d.ts" />
 | 
					 | 
				
			||||||
/// <reference path="fs.d.ts" />
 | 
					 | 
				
			||||||
/// <reference path="http.d.ts" />
 | 
					 | 
				
			||||||
/// <reference path="http2.d.ts" />
 | 
					 | 
				
			||||||
/// <reference path="https.d.ts" />
 | 
					 | 
				
			||||||
/// <reference path="inspector.d.ts" />
 | 
					 | 
				
			||||||
/// <reference path="module.d.ts" />
 | 
					 | 
				
			||||||
/// <reference path="net.d.ts" />
 | 
					 | 
				
			||||||
/// <reference path="os.d.ts" />
 | 
					 | 
				
			||||||
/// <reference path="path.d.ts" />
 | 
					 | 
				
			||||||
/// <reference path="perf_hooks.d.ts" />
 | 
					 | 
				
			||||||
/// <reference path="process.d.ts" />
 | 
					 | 
				
			||||||
/// <reference path="punycode.d.ts" />
 | 
					 | 
				
			||||||
/// <reference path="querystring.d.ts" />
 | 
					 | 
				
			||||||
/// <reference path="readline.d.ts" />
 | 
					 | 
				
			||||||
/// <reference path="repl.d.ts" />
 | 
					 | 
				
			||||||
/// <reference path="stream.d.ts" />
 | 
					 | 
				
			||||||
/// <reference path="string_decoder.d.ts" />
 | 
					 | 
				
			||||||
/// <reference path="timers.d.ts" />
 | 
					 | 
				
			||||||
/// <reference path="tls.d.ts" />
 | 
					 | 
				
			||||||
/// <reference path="trace_events.d.ts" />
 | 
					 | 
				
			||||||
/// <reference path="tty.d.ts" />
 | 
					 | 
				
			||||||
/// <reference path="url.d.ts" />
 | 
					 | 
				
			||||||
/// <reference path="util.d.ts" />
 | 
					 | 
				
			||||||
/// <reference path="v8.d.ts" />
 | 
					 | 
				
			||||||
/// <reference path="vm.d.ts" />
 | 
					 | 
				
			||||||
/// <reference path="worker_threads.d.ts" />
 | 
					 | 
				
			||||||
/// <reference path="zlib.d.ts" />
 | 
					 | 
				
			||||||
							
								
								
									
										16
									
								
								node_modules/@types/node/buffer.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										16
									
								
								node_modules/@types/node/buffer.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,16 +0,0 @@
 | 
				
			|||||||
declare module "buffer" {
 | 
					 | 
				
			||||||
    export const INSPECT_MAX_BYTES: number;
 | 
					 | 
				
			||||||
    const BuffType: typeof Buffer;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    export type TranscodeEncoding = "ascii" | "utf8" | "utf16le" | "ucs2" | "latin1" | "binary";
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    export function transcode(source: Buffer | Uint8Array, fromEnc: TranscodeEncoding, toEnc: TranscodeEncoding): Buffer;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    export const SlowBuffer: {
 | 
					 | 
				
			||||||
        /** @deprecated since v6.0.0, use Buffer.allocUnsafeSlow() */
 | 
					 | 
				
			||||||
        new(size: number): Buffer;
 | 
					 | 
				
			||||||
        prototype: Buffer;
 | 
					 | 
				
			||||||
    };
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    export { BuffType as Buffer };
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										365
									
								
								node_modules/@types/node/child_process.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										365
									
								
								node_modules/@types/node/child_process.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,365 +0,0 @@
 | 
				
			|||||||
declare module "child_process" {
 | 
					 | 
				
			||||||
    import * as events from "events";
 | 
					 | 
				
			||||||
    import * as net from "net";
 | 
					 | 
				
			||||||
    import { Writable, Readable, Stream, Pipe } from "stream";
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface ChildProcess extends events.EventEmitter {
 | 
					 | 
				
			||||||
        stdin: Writable | null;
 | 
					 | 
				
			||||||
        stdout: Readable | null;
 | 
					 | 
				
			||||||
        stderr: Readable | null;
 | 
					 | 
				
			||||||
        readonly channel?: Pipe | null;
 | 
					 | 
				
			||||||
        readonly stdio: [
 | 
					 | 
				
			||||||
            Writable | null, // stdin
 | 
					 | 
				
			||||||
            Readable | null, // stdout
 | 
					 | 
				
			||||||
            Readable | null, // stderr
 | 
					 | 
				
			||||||
            Readable | Writable | null | undefined, // extra
 | 
					 | 
				
			||||||
            Readable | Writable | null | undefined // extra
 | 
					 | 
				
			||||||
        ];
 | 
					 | 
				
			||||||
        readonly killed: boolean;
 | 
					 | 
				
			||||||
        readonly pid: number;
 | 
					 | 
				
			||||||
        readonly connected: boolean;
 | 
					 | 
				
			||||||
        kill(signal?: string): void;
 | 
					 | 
				
			||||||
        send(message: any, callback?: (error: Error | null) => void): boolean;
 | 
					 | 
				
			||||||
        send(message: any, sendHandle?: net.Socket | net.Server, callback?: (error: Error | null) => void): boolean;
 | 
					 | 
				
			||||||
        send(message: any, sendHandle?: net.Socket | net.Server, options?: MessageOptions, callback?: (error: Error | null) => void): boolean;
 | 
					 | 
				
			||||||
        disconnect(): void;
 | 
					 | 
				
			||||||
        unref(): void;
 | 
					 | 
				
			||||||
        ref(): void;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * events.EventEmitter
 | 
					 | 
				
			||||||
         * 1. close
 | 
					 | 
				
			||||||
         * 2. disconnect
 | 
					 | 
				
			||||||
         * 3. error
 | 
					 | 
				
			||||||
         * 4. exit
 | 
					 | 
				
			||||||
         * 5. message
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        addListener(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "close", listener: (code: number, signal: string) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "disconnect", listener: () => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "exit", listener: (code: number | null, signal: string | null) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "message", listener: (message: any, sendHandle: net.Socket | net.Server) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        emit(event: string | symbol, ...args: any[]): boolean;
 | 
					 | 
				
			||||||
        emit(event: "close", code: number, signal: string): boolean;
 | 
					 | 
				
			||||||
        emit(event: "disconnect"): boolean;
 | 
					 | 
				
			||||||
        emit(event: "error", err: Error): boolean;
 | 
					 | 
				
			||||||
        emit(event: "exit", code: number | null, signal: string | null): boolean;
 | 
					 | 
				
			||||||
        emit(event: "message", message: any, sendHandle: net.Socket | net.Server): boolean;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        on(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        on(event: "close", listener: (code: number, signal: string) => void): this;
 | 
					 | 
				
			||||||
        on(event: "disconnect", listener: () => void): this;
 | 
					 | 
				
			||||||
        on(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        on(event: "exit", listener: (code: number | null, signal: string | null) => void): this;
 | 
					 | 
				
			||||||
        on(event: "message", listener: (message: any, sendHandle: net.Socket | net.Server) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        once(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        once(event: "close", listener: (code: number, signal: string) => void): this;
 | 
					 | 
				
			||||||
        once(event: "disconnect", listener: () => void): this;
 | 
					 | 
				
			||||||
        once(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        once(event: "exit", listener: (code: number | null, signal: string | null) => void): this;
 | 
					 | 
				
			||||||
        once(event: "message", listener: (message: any, sendHandle: net.Socket | net.Server) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        prependListener(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "close", listener: (code: number, signal: string) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "disconnect", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "exit", listener: (code: number | null, signal: string | null) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "message", listener: (message: any, sendHandle: net.Socket | net.Server) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        prependOnceListener(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "close", listener: (code: number, signal: string) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "disconnect", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "exit", listener: (code: number | null, signal: string | null) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "message", listener: (message: any, sendHandle: net.Socket | net.Server) => void): this;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    // return this object when stdio option is undefined or not specified
 | 
					 | 
				
			||||||
    interface ChildProcessWithoutNullStreams extends ChildProcess {
 | 
					 | 
				
			||||||
        stdin: Writable;
 | 
					 | 
				
			||||||
        stdout: Readable;
 | 
					 | 
				
			||||||
        stderr: Readable;
 | 
					 | 
				
			||||||
        readonly stdio: [
 | 
					 | 
				
			||||||
            Writable, // stdin
 | 
					 | 
				
			||||||
            Readable, // stdout
 | 
					 | 
				
			||||||
            Readable, // stderr
 | 
					 | 
				
			||||||
            Readable | Writable | null | undefined, // extra, no modification
 | 
					 | 
				
			||||||
            Readable | Writable | null | undefined // extra, no modification
 | 
					 | 
				
			||||||
        ];
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface MessageOptions {
 | 
					 | 
				
			||||||
        keepOpen?: boolean;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    type StdioOptions = "pipe" | "ignore" | "inherit" | Array<("pipe" | "ipc" | "ignore" | "inherit" | Stream | number | null | undefined)>;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface ProcessEnvOptions {
 | 
					 | 
				
			||||||
        uid?: number;
 | 
					 | 
				
			||||||
        gid?: number;
 | 
					 | 
				
			||||||
        cwd?: string;
 | 
					 | 
				
			||||||
        env?: NodeJS.ProcessEnv;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface CommonOptions extends ProcessEnvOptions {
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * @default true
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        windowsHide?: boolean;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * @default 0
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        timeout?: number;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface SpawnOptions extends CommonOptions {
 | 
					 | 
				
			||||||
        argv0?: string;
 | 
					 | 
				
			||||||
        stdio?: StdioOptions;
 | 
					 | 
				
			||||||
        detached?: boolean;
 | 
					 | 
				
			||||||
        shell?: boolean | string;
 | 
					 | 
				
			||||||
        windowsVerbatimArguments?: boolean;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface SpawnOptionsWithoutStdio extends SpawnOptions {
 | 
					 | 
				
			||||||
        stdio?: 'pipe' | Array<null | undefined | 'pipe'>;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function spawn(command: string, options?: SpawnOptionsWithoutStdio): ChildProcessWithoutNullStreams;
 | 
					 | 
				
			||||||
    function spawn(command: string, options: SpawnOptions): ChildProcess;
 | 
					 | 
				
			||||||
    function spawn(command: string, args?: ReadonlyArray<string>, options?: SpawnOptionsWithoutStdio): ChildProcessWithoutNullStreams;
 | 
					 | 
				
			||||||
    function spawn(command: string, args: ReadonlyArray<string>, options: SpawnOptions): ChildProcess;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface ExecOptions extends CommonOptions {
 | 
					 | 
				
			||||||
        shell?: string;
 | 
					 | 
				
			||||||
        maxBuffer?: number;
 | 
					 | 
				
			||||||
        killSignal?: string;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface ExecOptionsWithStringEncoding extends ExecOptions {
 | 
					 | 
				
			||||||
        encoding: BufferEncoding;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface ExecOptionsWithBufferEncoding extends ExecOptions {
 | 
					 | 
				
			||||||
        encoding: string | null; // specify `null`.
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface ExecException extends Error {
 | 
					 | 
				
			||||||
        cmd?: string;
 | 
					 | 
				
			||||||
        killed?: boolean;
 | 
					 | 
				
			||||||
        code?: number;
 | 
					 | 
				
			||||||
        signal?: string;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    // no `options` definitely means stdout/stderr are `string`.
 | 
					 | 
				
			||||||
    function exec(command: string, callback?: (error: ExecException | null, stdout: string, stderr: string) => void): ChildProcess;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    // `options` with `"buffer"` or `null` for `encoding` means stdout/stderr are definitely `Buffer`.
 | 
					 | 
				
			||||||
    function exec(command: string, options: { encoding: "buffer" | null } & ExecOptions, callback?: (error: ExecException | null, stdout: Buffer, stderr: Buffer) => void): ChildProcess;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    // `options` with well known `encoding` means stdout/stderr are definitely `string`.
 | 
					 | 
				
			||||||
    function exec(command: string, options: { encoding: BufferEncoding } & ExecOptions, callback?: (error: ExecException | null, stdout: string, stderr: string) => void): ChildProcess;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    // `options` with an `encoding` whose type is `string` means stdout/stderr could either be `Buffer` or `string`.
 | 
					 | 
				
			||||||
    // There is no guarantee the `encoding` is unknown as `string` is a superset of `BufferEncoding`.
 | 
					 | 
				
			||||||
    function exec(command: string, options: { encoding: string } & ExecOptions, callback?: (error: ExecException | null, stdout: string | Buffer, stderr: string | Buffer) => void): ChildProcess;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    // `options` without an `encoding` means stdout/stderr are definitely `string`.
 | 
					 | 
				
			||||||
    function exec(command: string, options: ExecOptions, callback?: (error: ExecException | null, stdout: string, stderr: string) => void): ChildProcess;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    // fallback if nothing else matches. Worst case is always `string | Buffer`.
 | 
					 | 
				
			||||||
    function exec(
 | 
					 | 
				
			||||||
        command: string,
 | 
					 | 
				
			||||||
        options: ({ encoding?: string | null } & ExecOptions) | undefined | null,
 | 
					 | 
				
			||||||
        callback?: (error: ExecException | null, stdout: string | Buffer, stderr: string | Buffer) => void,
 | 
					 | 
				
			||||||
    ): ChildProcess;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    // NOTE: This namespace provides design-time support for util.promisify. Exported members do not exist at runtime.
 | 
					 | 
				
			||||||
    namespace exec {
 | 
					 | 
				
			||||||
        function __promisify__(command: string): Promise<{ stdout: string, stderr: string }>;
 | 
					 | 
				
			||||||
        function __promisify__(command: string, options: { encoding: "buffer" | null } & ExecOptions): Promise<{ stdout: Buffer, stderr: Buffer }>;
 | 
					 | 
				
			||||||
        function __promisify__(command: string, options: { encoding: BufferEncoding } & ExecOptions): Promise<{ stdout: string, stderr: string }>;
 | 
					 | 
				
			||||||
        function __promisify__(command: string, options: ExecOptions): Promise<{ stdout: string, stderr: string }>;
 | 
					 | 
				
			||||||
        function __promisify__(command: string, options?: ({ encoding?: string | null } & ExecOptions) | null): Promise<{ stdout: string | Buffer, stderr: string | Buffer }>;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface ExecFileOptions extends CommonOptions {
 | 
					 | 
				
			||||||
        maxBuffer?: number;
 | 
					 | 
				
			||||||
        killSignal?: string;
 | 
					 | 
				
			||||||
        windowsVerbatimArguments?: boolean;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    interface ExecFileOptionsWithStringEncoding extends ExecFileOptions {
 | 
					 | 
				
			||||||
        encoding: BufferEncoding;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    interface ExecFileOptionsWithBufferEncoding extends ExecFileOptions {
 | 
					 | 
				
			||||||
        encoding: 'buffer' | null;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    interface ExecFileOptionsWithOtherEncoding extends ExecFileOptions {
 | 
					 | 
				
			||||||
        encoding: string;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function execFile(file: string): ChildProcess;
 | 
					 | 
				
			||||||
    function execFile(file: string, options: ({ encoding?: string | null } & ExecFileOptions) | undefined | null): ChildProcess;
 | 
					 | 
				
			||||||
    function execFile(file: string, args?: ReadonlyArray<string> | null): ChildProcess;
 | 
					 | 
				
			||||||
    function execFile(file: string, args: ReadonlyArray<string> | undefined | null, options: ({ encoding?: string | null } & ExecFileOptions) | undefined | null): ChildProcess;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    // no `options` definitely means stdout/stderr are `string`.
 | 
					 | 
				
			||||||
    function execFile(file: string, callback: (error: Error | null, stdout: string, stderr: string) => void): ChildProcess;
 | 
					 | 
				
			||||||
    function execFile(file: string, args: ReadonlyArray<string> | undefined | null, callback: (error: Error | null, stdout: string, stderr: string) => void): ChildProcess;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    // `options` with `"buffer"` or `null` for `encoding` means stdout/stderr are definitely `Buffer`.
 | 
					 | 
				
			||||||
    function execFile(file: string, options: ExecFileOptionsWithBufferEncoding, callback: (error: Error | null, stdout: Buffer, stderr: Buffer) => void): ChildProcess;
 | 
					 | 
				
			||||||
    function execFile(
 | 
					 | 
				
			||||||
        file: string,
 | 
					 | 
				
			||||||
        args: ReadonlyArray<string> | undefined | null,
 | 
					 | 
				
			||||||
        options: ExecFileOptionsWithBufferEncoding,
 | 
					 | 
				
			||||||
        callback: (error: Error | null, stdout: Buffer, stderr: Buffer) => void,
 | 
					 | 
				
			||||||
    ): ChildProcess;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    // `options` with well known `encoding` means stdout/stderr are definitely `string`.
 | 
					 | 
				
			||||||
    function execFile(file: string, options: ExecFileOptionsWithStringEncoding, callback: (error: Error | null, stdout: string, stderr: string) => void): ChildProcess;
 | 
					 | 
				
			||||||
    function execFile(
 | 
					 | 
				
			||||||
        file: string,
 | 
					 | 
				
			||||||
        args: ReadonlyArray<string> | undefined | null,
 | 
					 | 
				
			||||||
        options: ExecFileOptionsWithStringEncoding,
 | 
					 | 
				
			||||||
        callback: (error: Error | null, stdout: string, stderr: string) => void,
 | 
					 | 
				
			||||||
    ): ChildProcess;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    // `options` with an `encoding` whose type is `string` means stdout/stderr could either be `Buffer` or `string`.
 | 
					 | 
				
			||||||
    // There is no guarantee the `encoding` is unknown as `string` is a superset of `BufferEncoding`.
 | 
					 | 
				
			||||||
    function execFile(
 | 
					 | 
				
			||||||
        file: string,
 | 
					 | 
				
			||||||
        options: ExecFileOptionsWithOtherEncoding,
 | 
					 | 
				
			||||||
        callback: (error: Error | null, stdout: string | Buffer, stderr: string | Buffer) => void,
 | 
					 | 
				
			||||||
    ): ChildProcess;
 | 
					 | 
				
			||||||
    function execFile(
 | 
					 | 
				
			||||||
        file: string,
 | 
					 | 
				
			||||||
        args: ReadonlyArray<string> | undefined | null,
 | 
					 | 
				
			||||||
        options: ExecFileOptionsWithOtherEncoding,
 | 
					 | 
				
			||||||
        callback: (error: Error | null, stdout: string | Buffer, stderr: string | Buffer) => void,
 | 
					 | 
				
			||||||
    ): ChildProcess;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    // `options` without an `encoding` means stdout/stderr are definitely `string`.
 | 
					 | 
				
			||||||
    function execFile(file: string, options: ExecFileOptions, callback: (error: Error | null, stdout: string, stderr: string) => void): ChildProcess;
 | 
					 | 
				
			||||||
    function execFile(file: string, args: ReadonlyArray<string> | undefined | null, options: ExecFileOptions, callback: (error: Error | null, stdout: string, stderr: string) => void): ChildProcess;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    // fallback if nothing else matches. Worst case is always `string | Buffer`.
 | 
					 | 
				
			||||||
    function execFile(
 | 
					 | 
				
			||||||
        file: string,
 | 
					 | 
				
			||||||
        options: ({ encoding?: string | null } & ExecFileOptions) | undefined | null,
 | 
					 | 
				
			||||||
        callback: ((error: Error | null, stdout: string | Buffer, stderr: string | Buffer) => void) | undefined | null,
 | 
					 | 
				
			||||||
    ): ChildProcess;
 | 
					 | 
				
			||||||
    function execFile(
 | 
					 | 
				
			||||||
        file: string,
 | 
					 | 
				
			||||||
        args: ReadonlyArray<string> | undefined | null,
 | 
					 | 
				
			||||||
        options: ({ encoding?: string | null } & ExecFileOptions) | undefined | null,
 | 
					 | 
				
			||||||
        callback: ((error: Error | null, stdout: string | Buffer, stderr: string | Buffer) => void) | undefined | null,
 | 
					 | 
				
			||||||
    ): ChildProcess;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    // NOTE: This namespace provides design-time support for util.promisify. Exported members do not exist at runtime.
 | 
					 | 
				
			||||||
    namespace execFile {
 | 
					 | 
				
			||||||
        function __promisify__(file: string): Promise<{ stdout: string, stderr: string }>;
 | 
					 | 
				
			||||||
        function __promisify__(file: string, args: string[] | undefined | null): Promise<{ stdout: string, stderr: string }>;
 | 
					 | 
				
			||||||
        function __promisify__(file: string, options: ExecFileOptionsWithBufferEncoding): Promise<{ stdout: Buffer, stderr: Buffer }>;
 | 
					 | 
				
			||||||
        function __promisify__(file: string, args: string[] | undefined | null, options: ExecFileOptionsWithBufferEncoding): Promise<{ stdout: Buffer, stderr: Buffer }>;
 | 
					 | 
				
			||||||
        function __promisify__(file: string, options: ExecFileOptionsWithStringEncoding): Promise<{ stdout: string, stderr: string }>;
 | 
					 | 
				
			||||||
        function __promisify__(file: string, args: string[] | undefined | null, options: ExecFileOptionsWithStringEncoding): Promise<{ stdout: string, stderr: string }>;
 | 
					 | 
				
			||||||
        function __promisify__(file: string, options: ExecFileOptionsWithOtherEncoding): Promise<{ stdout: string | Buffer, stderr: string | Buffer }>;
 | 
					 | 
				
			||||||
        function __promisify__(file: string, args: string[] | undefined | null, options: ExecFileOptionsWithOtherEncoding): Promise<{ stdout: string | Buffer, stderr: string | Buffer }>;
 | 
					 | 
				
			||||||
        function __promisify__(file: string, options: ExecFileOptions): Promise<{ stdout: string, stderr: string }>;
 | 
					 | 
				
			||||||
        function __promisify__(file: string, args: string[] | undefined | null, options: ExecFileOptions): Promise<{ stdout: string, stderr: string }>;
 | 
					 | 
				
			||||||
        function __promisify__(file: string, options: ({ encoding?: string | null } & ExecFileOptions) | undefined | null): Promise<{ stdout: string | Buffer, stderr: string | Buffer }>;
 | 
					 | 
				
			||||||
        function __promisify__(
 | 
					 | 
				
			||||||
            file: string,
 | 
					 | 
				
			||||||
            args: string[] | undefined | null,
 | 
					 | 
				
			||||||
            options: ({ encoding?: string | null } & ExecFileOptions) | undefined | null,
 | 
					 | 
				
			||||||
        ): Promise<{ stdout: string | Buffer, stderr: string | Buffer }>;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface ForkOptions extends ProcessEnvOptions {
 | 
					 | 
				
			||||||
        execPath?: string;
 | 
					 | 
				
			||||||
        execArgv?: string[];
 | 
					 | 
				
			||||||
        silent?: boolean;
 | 
					 | 
				
			||||||
        stdio?: StdioOptions;
 | 
					 | 
				
			||||||
        detached?: boolean;
 | 
					 | 
				
			||||||
        windowsVerbatimArguments?: boolean;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    function fork(modulePath: string, args?: ReadonlyArray<string>, options?: ForkOptions): ChildProcess;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface SpawnSyncOptions extends CommonOptions {
 | 
					 | 
				
			||||||
        argv0?: string; // Not specified in the docs
 | 
					 | 
				
			||||||
        input?: string | Buffer | NodeJS.TypedArray | DataView;
 | 
					 | 
				
			||||||
        stdio?: StdioOptions;
 | 
					 | 
				
			||||||
        killSignal?: string | number;
 | 
					 | 
				
			||||||
        maxBuffer?: number;
 | 
					 | 
				
			||||||
        encoding?: string;
 | 
					 | 
				
			||||||
        shell?: boolean | string;
 | 
					 | 
				
			||||||
        windowsVerbatimArguments?: boolean;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    interface SpawnSyncOptionsWithStringEncoding extends SpawnSyncOptions {
 | 
					 | 
				
			||||||
        encoding: BufferEncoding;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    interface SpawnSyncOptionsWithBufferEncoding extends SpawnSyncOptions {
 | 
					 | 
				
			||||||
        encoding: string; // specify `null`.
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    interface SpawnSyncReturns<T> {
 | 
					 | 
				
			||||||
        pid: number;
 | 
					 | 
				
			||||||
        output: string[];
 | 
					 | 
				
			||||||
        stdout: T;
 | 
					 | 
				
			||||||
        stderr: T;
 | 
					 | 
				
			||||||
        status: number;
 | 
					 | 
				
			||||||
        signal: string;
 | 
					 | 
				
			||||||
        error?: Error;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    function spawnSync(command: string): SpawnSyncReturns<Buffer>;
 | 
					 | 
				
			||||||
    function spawnSync(command: string, options?: SpawnSyncOptionsWithStringEncoding): SpawnSyncReturns<string>;
 | 
					 | 
				
			||||||
    function spawnSync(command: string, options?: SpawnSyncOptionsWithBufferEncoding): SpawnSyncReturns<Buffer>;
 | 
					 | 
				
			||||||
    function spawnSync(command: string, options?: SpawnSyncOptions): SpawnSyncReturns<Buffer>;
 | 
					 | 
				
			||||||
    function spawnSync(command: string, args?: ReadonlyArray<string>, options?: SpawnSyncOptionsWithStringEncoding): SpawnSyncReturns<string>;
 | 
					 | 
				
			||||||
    function spawnSync(command: string, args?: ReadonlyArray<string>, options?: SpawnSyncOptionsWithBufferEncoding): SpawnSyncReturns<Buffer>;
 | 
					 | 
				
			||||||
    function spawnSync(command: string, args?: ReadonlyArray<string>, options?: SpawnSyncOptions): SpawnSyncReturns<Buffer>;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface ExecSyncOptions extends CommonOptions {
 | 
					 | 
				
			||||||
        input?: string | Buffer | Uint8Array;
 | 
					 | 
				
			||||||
        stdio?: StdioOptions;
 | 
					 | 
				
			||||||
        shell?: string;
 | 
					 | 
				
			||||||
        killSignal?: string | number;
 | 
					 | 
				
			||||||
        maxBuffer?: number;
 | 
					 | 
				
			||||||
        encoding?: string;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    interface ExecSyncOptionsWithStringEncoding extends ExecSyncOptions {
 | 
					 | 
				
			||||||
        encoding: BufferEncoding;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    interface ExecSyncOptionsWithBufferEncoding extends ExecSyncOptions {
 | 
					 | 
				
			||||||
        encoding: string; // specify `null`.
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    function execSync(command: string): Buffer;
 | 
					 | 
				
			||||||
    function execSync(command: string, options?: ExecSyncOptionsWithStringEncoding): string;
 | 
					 | 
				
			||||||
    function execSync(command: string, options?: ExecSyncOptionsWithBufferEncoding): Buffer;
 | 
					 | 
				
			||||||
    function execSync(command: string, options?: ExecSyncOptions): Buffer;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface ExecFileSyncOptions extends CommonOptions {
 | 
					 | 
				
			||||||
        input?: string | Buffer | NodeJS.TypedArray | DataView;
 | 
					 | 
				
			||||||
        stdio?: StdioOptions;
 | 
					 | 
				
			||||||
        killSignal?: string | number;
 | 
					 | 
				
			||||||
        maxBuffer?: number;
 | 
					 | 
				
			||||||
        encoding?: string;
 | 
					 | 
				
			||||||
        shell?: boolean | string;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    interface ExecFileSyncOptionsWithStringEncoding extends ExecFileSyncOptions {
 | 
					 | 
				
			||||||
        encoding: BufferEncoding;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    interface ExecFileSyncOptionsWithBufferEncoding extends ExecFileSyncOptions {
 | 
					 | 
				
			||||||
        encoding: string; // specify `null`.
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    function execFileSync(command: string): Buffer;
 | 
					 | 
				
			||||||
    function execFileSync(command: string, options?: ExecFileSyncOptionsWithStringEncoding): string;
 | 
					 | 
				
			||||||
    function execFileSync(command: string, options?: ExecFileSyncOptionsWithBufferEncoding): Buffer;
 | 
					 | 
				
			||||||
    function execFileSync(command: string, options?: ExecFileSyncOptions): Buffer;
 | 
					 | 
				
			||||||
    function execFileSync(command: string, args?: ReadonlyArray<string>, options?: ExecFileSyncOptionsWithStringEncoding): string;
 | 
					 | 
				
			||||||
    function execFileSync(command: string, args?: ReadonlyArray<string>, options?: ExecFileSyncOptionsWithBufferEncoding): Buffer;
 | 
					 | 
				
			||||||
    function execFileSync(command: string, args?: ReadonlyArray<string>, options?: ExecFileSyncOptions): Buffer;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										260
									
								
								node_modules/@types/node/cluster.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										260
									
								
								node_modules/@types/node/cluster.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,260 +0,0 @@
 | 
				
			|||||||
declare module "cluster" {
 | 
					 | 
				
			||||||
    import * as child from "child_process";
 | 
					 | 
				
			||||||
    import * as events from "events";
 | 
					 | 
				
			||||||
    import * as net from "net";
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    // interfaces
 | 
					 | 
				
			||||||
    interface ClusterSettings {
 | 
					 | 
				
			||||||
        execArgv?: string[]; // default: process.execArgv
 | 
					 | 
				
			||||||
        exec?: string;
 | 
					 | 
				
			||||||
        args?: string[];
 | 
					 | 
				
			||||||
        silent?: boolean;
 | 
					 | 
				
			||||||
        stdio?: any[];
 | 
					 | 
				
			||||||
        uid?: number;
 | 
					 | 
				
			||||||
        gid?: number;
 | 
					 | 
				
			||||||
        inspectPort?: number | (() => number);
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface Address {
 | 
					 | 
				
			||||||
        address: string;
 | 
					 | 
				
			||||||
        port: number;
 | 
					 | 
				
			||||||
        addressType: number | "udp4" | "udp6";  // 4, 6, -1, "udp4", "udp6"
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    class Worker extends events.EventEmitter {
 | 
					 | 
				
			||||||
        id: number;
 | 
					 | 
				
			||||||
        process: child.ChildProcess;
 | 
					 | 
				
			||||||
        send(message: any, sendHandle?: any, callback?: (error: Error | null) => void): boolean;
 | 
					 | 
				
			||||||
        kill(signal?: string): void;
 | 
					 | 
				
			||||||
        destroy(signal?: string): void;
 | 
					 | 
				
			||||||
        disconnect(): void;
 | 
					 | 
				
			||||||
        isConnected(): boolean;
 | 
					 | 
				
			||||||
        isDead(): boolean;
 | 
					 | 
				
			||||||
        exitedAfterDisconnect: boolean;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * events.EventEmitter
 | 
					 | 
				
			||||||
         *   1. disconnect
 | 
					 | 
				
			||||||
         *   2. error
 | 
					 | 
				
			||||||
         *   3. exit
 | 
					 | 
				
			||||||
         *   4. listening
 | 
					 | 
				
			||||||
         *   5. message
 | 
					 | 
				
			||||||
         *   6. online
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        addListener(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "disconnect", listener: () => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "error", listener: (error: Error) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "exit", listener: (code: number, signal: string) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "listening", listener: (address: Address) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "message", listener: (message: any, handle: net.Socket | net.Server) => void): this;  // the handle is a net.Socket or net.Server object, or undefined.
 | 
					 | 
				
			||||||
        addListener(event: "online", listener: () => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        emit(event: string | symbol, ...args: any[]): boolean;
 | 
					 | 
				
			||||||
        emit(event: "disconnect"): boolean;
 | 
					 | 
				
			||||||
        emit(event: "error", error: Error): boolean;
 | 
					 | 
				
			||||||
        emit(event: "exit", code: number, signal: string): boolean;
 | 
					 | 
				
			||||||
        emit(event: "listening", address: Address): boolean;
 | 
					 | 
				
			||||||
        emit(event: "message", message: any, handle: net.Socket | net.Server): boolean;
 | 
					 | 
				
			||||||
        emit(event: "online"): boolean;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        on(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        on(event: "disconnect", listener: () => void): this;
 | 
					 | 
				
			||||||
        on(event: "error", listener: (error: Error) => void): this;
 | 
					 | 
				
			||||||
        on(event: "exit", listener: (code: number, signal: string) => void): this;
 | 
					 | 
				
			||||||
        on(event: "listening", listener: (address: Address) => void): this;
 | 
					 | 
				
			||||||
        on(event: "message", listener: (message: any, handle: net.Socket | net.Server) => void): this;  // the handle is a net.Socket or net.Server object, or undefined.
 | 
					 | 
				
			||||||
        on(event: "online", listener: () => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        once(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        once(event: "disconnect", listener: () => void): this;
 | 
					 | 
				
			||||||
        once(event: "error", listener: (error: Error) => void): this;
 | 
					 | 
				
			||||||
        once(event: "exit", listener: (code: number, signal: string) => void): this;
 | 
					 | 
				
			||||||
        once(event: "listening", listener: (address: Address) => void): this;
 | 
					 | 
				
			||||||
        once(event: "message", listener: (message: any, handle: net.Socket | net.Server) => void): this;  // the handle is a net.Socket or net.Server object, or undefined.
 | 
					 | 
				
			||||||
        once(event: "online", listener: () => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        prependListener(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "disconnect", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "error", listener: (error: Error) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "exit", listener: (code: number, signal: string) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "listening", listener: (address: Address) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "message", listener: (message: any, handle: net.Socket | net.Server) => void): this;  // the handle is a net.Socket or net.Server object, or undefined.
 | 
					 | 
				
			||||||
        prependListener(event: "online", listener: () => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        prependOnceListener(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "disconnect", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "error", listener: (error: Error) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "exit", listener: (code: number, signal: string) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "listening", listener: (address: Address) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "message", listener: (message: any, handle: net.Socket | net.Server) => void): this;  // the handle is a net.Socket or net.Server object, or undefined.
 | 
					 | 
				
			||||||
        prependOnceListener(event: "online", listener: () => void): this;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface Cluster extends events.EventEmitter {
 | 
					 | 
				
			||||||
        Worker: Worker;
 | 
					 | 
				
			||||||
        disconnect(callback?: () => void): void;
 | 
					 | 
				
			||||||
        fork(env?: any): Worker;
 | 
					 | 
				
			||||||
        isMaster: boolean;
 | 
					 | 
				
			||||||
        isWorker: boolean;
 | 
					 | 
				
			||||||
        // TODO: cluster.schedulingPolicy
 | 
					 | 
				
			||||||
        settings: ClusterSettings;
 | 
					 | 
				
			||||||
        setupMaster(settings?: ClusterSettings): void;
 | 
					 | 
				
			||||||
        worker?: Worker;
 | 
					 | 
				
			||||||
        workers?: {
 | 
					 | 
				
			||||||
            [index: string]: Worker | undefined
 | 
					 | 
				
			||||||
        };
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * events.EventEmitter
 | 
					 | 
				
			||||||
         *   1. disconnect
 | 
					 | 
				
			||||||
         *   2. exit
 | 
					 | 
				
			||||||
         *   3. fork
 | 
					 | 
				
			||||||
         *   4. listening
 | 
					 | 
				
			||||||
         *   5. message
 | 
					 | 
				
			||||||
         *   6. online
 | 
					 | 
				
			||||||
         *   7. setup
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        addListener(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "disconnect", listener: (worker: Worker) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "exit", listener: (worker: Worker, code: number, signal: string) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "fork", listener: (worker: Worker) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "listening", listener: (worker: Worker, address: Address) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "message", listener: (worker: Worker, message: any, handle: net.Socket | net.Server) => void): this;  // the handle is a net.Socket or net.Server object, or undefined.
 | 
					 | 
				
			||||||
        addListener(event: "online", listener: (worker: Worker) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "setup", listener: (settings: ClusterSettings) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        emit(event: string | symbol, ...args: any[]): boolean;
 | 
					 | 
				
			||||||
        emit(event: "disconnect", worker: Worker): boolean;
 | 
					 | 
				
			||||||
        emit(event: "exit", worker: Worker, code: number, signal: string): boolean;
 | 
					 | 
				
			||||||
        emit(event: "fork", worker: Worker): boolean;
 | 
					 | 
				
			||||||
        emit(event: "listening", worker: Worker, address: Address): boolean;
 | 
					 | 
				
			||||||
        emit(event: "message", worker: Worker, message: any, handle: net.Socket | net.Server): boolean;
 | 
					 | 
				
			||||||
        emit(event: "online", worker: Worker): boolean;
 | 
					 | 
				
			||||||
        emit(event: "setup", settings: ClusterSettings): boolean;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        on(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        on(event: "disconnect", listener: (worker: Worker) => void): this;
 | 
					 | 
				
			||||||
        on(event: "exit", listener: (worker: Worker, code: number, signal: string) => void): this;
 | 
					 | 
				
			||||||
        on(event: "fork", listener: (worker: Worker) => void): this;
 | 
					 | 
				
			||||||
        on(event: "listening", listener: (worker: Worker, address: Address) => void): this;
 | 
					 | 
				
			||||||
        on(event: "message", listener: (worker: Worker, message: any, handle: net.Socket | net.Server) => void): this;  // the handle is a net.Socket or net.Server object, or undefined.
 | 
					 | 
				
			||||||
        on(event: "online", listener: (worker: Worker) => void): this;
 | 
					 | 
				
			||||||
        on(event: "setup", listener: (settings: ClusterSettings) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        once(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        once(event: "disconnect", listener: (worker: Worker) => void): this;
 | 
					 | 
				
			||||||
        once(event: "exit", listener: (worker: Worker, code: number, signal: string) => void): this;
 | 
					 | 
				
			||||||
        once(event: "fork", listener: (worker: Worker) => void): this;
 | 
					 | 
				
			||||||
        once(event: "listening", listener: (worker: Worker, address: Address) => void): this;
 | 
					 | 
				
			||||||
        once(event: "message", listener: (worker: Worker, message: any, handle: net.Socket | net.Server) => void): this;  // the handle is a net.Socket or net.Server object, or undefined.
 | 
					 | 
				
			||||||
        once(event: "online", listener: (worker: Worker) => void): this;
 | 
					 | 
				
			||||||
        once(event: "setup", listener: (settings: ClusterSettings) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        prependListener(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "disconnect", listener: (worker: Worker) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "exit", listener: (worker: Worker, code: number, signal: string) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "fork", listener: (worker: Worker) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "listening", listener: (worker: Worker, address: Address) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "message", listener: (worker: Worker, message: any, handle: net.Socket | net.Server) => void): this;  // the handle is a net.Socket or net.Server object, or undefined.
 | 
					 | 
				
			||||||
        prependListener(event: "online", listener: (worker: Worker) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "setup", listener: (settings: ClusterSettings) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        prependOnceListener(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "disconnect", listener: (worker: Worker) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "exit", listener: (worker: Worker, code: number, signal: string) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "fork", listener: (worker: Worker) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "listening", listener: (worker: Worker, address: Address) => void): this;
 | 
					 | 
				
			||||||
        // the handle is a net.Socket or net.Server object, or undefined.
 | 
					 | 
				
			||||||
        prependOnceListener(event: "message", listener: (worker: Worker, message: any, handle: net.Socket | net.Server) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "online", listener: (worker: Worker) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "setup", listener: (settings: ClusterSettings) => void): this;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function disconnect(callback?: () => void): void;
 | 
					 | 
				
			||||||
    function fork(env?: any): Worker;
 | 
					 | 
				
			||||||
    const isMaster: boolean;
 | 
					 | 
				
			||||||
    const isWorker: boolean;
 | 
					 | 
				
			||||||
    // TODO: cluster.schedulingPolicy
 | 
					 | 
				
			||||||
    const settings: ClusterSettings;
 | 
					 | 
				
			||||||
    function setupMaster(settings?: ClusterSettings): void;
 | 
					 | 
				
			||||||
    const worker: Worker;
 | 
					 | 
				
			||||||
    const workers: {
 | 
					 | 
				
			||||||
        [index: string]: Worker | undefined
 | 
					 | 
				
			||||||
    };
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * events.EventEmitter
 | 
					 | 
				
			||||||
     *   1. disconnect
 | 
					 | 
				
			||||||
     *   2. exit
 | 
					 | 
				
			||||||
     *   3. fork
 | 
					 | 
				
			||||||
     *   4. listening
 | 
					 | 
				
			||||||
     *   5. message
 | 
					 | 
				
			||||||
     *   6. online
 | 
					 | 
				
			||||||
     *   7. setup
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    function addListener(event: string, listener: (...args: any[]) => void): Cluster;
 | 
					 | 
				
			||||||
    function addListener(event: "disconnect", listener: (worker: Worker) => void): Cluster;
 | 
					 | 
				
			||||||
    function addListener(event: "exit", listener: (worker: Worker, code: number, signal: string) => void): Cluster;
 | 
					 | 
				
			||||||
    function addListener(event: "fork", listener: (worker: Worker) => void): Cluster;
 | 
					 | 
				
			||||||
    function addListener(event: "listening", listener: (worker: Worker, address: Address) => void): Cluster;
 | 
					 | 
				
			||||||
     // the handle is a net.Socket or net.Server object, or undefined.
 | 
					 | 
				
			||||||
    function addListener(event: "message", listener: (worker: Worker, message: any, handle: net.Socket | net.Server) => void): Cluster;
 | 
					 | 
				
			||||||
    function addListener(event: "online", listener: (worker: Worker) => void): Cluster;
 | 
					 | 
				
			||||||
    function addListener(event: "setup", listener: (settings: ClusterSettings) => void): Cluster;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function emit(event: string | symbol, ...args: any[]): boolean;
 | 
					 | 
				
			||||||
    function emit(event: "disconnect", worker: Worker): boolean;
 | 
					 | 
				
			||||||
    function emit(event: "exit", worker: Worker, code: number, signal: string): boolean;
 | 
					 | 
				
			||||||
    function emit(event: "fork", worker: Worker): boolean;
 | 
					 | 
				
			||||||
    function emit(event: "listening", worker: Worker, address: Address): boolean;
 | 
					 | 
				
			||||||
    function emit(event: "message", worker: Worker, message: any, handle: net.Socket | net.Server): boolean;
 | 
					 | 
				
			||||||
    function emit(event: "online", worker: Worker): boolean;
 | 
					 | 
				
			||||||
    function emit(event: "setup", settings: ClusterSettings): boolean;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function on(event: string, listener: (...args: any[]) => void): Cluster;
 | 
					 | 
				
			||||||
    function on(event: "disconnect", listener: (worker: Worker) => void): Cluster;
 | 
					 | 
				
			||||||
    function on(event: "exit", listener: (worker: Worker, code: number, signal: string) => void): Cluster;
 | 
					 | 
				
			||||||
    function on(event: "fork", listener: (worker: Worker) => void): Cluster;
 | 
					 | 
				
			||||||
    function on(event: "listening", listener: (worker: Worker, address: Address) => void): Cluster;
 | 
					 | 
				
			||||||
    function on(event: "message", listener: (worker: Worker, message: any, handle: net.Socket | net.Server) => void): Cluster;  // the handle is a net.Socket or net.Server object, or undefined.
 | 
					 | 
				
			||||||
    function on(event: "online", listener: (worker: Worker) => void): Cluster;
 | 
					 | 
				
			||||||
    function on(event: "setup", listener: (settings: ClusterSettings) => void): Cluster;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function once(event: string, listener: (...args: any[]) => void): Cluster;
 | 
					 | 
				
			||||||
    function once(event: "disconnect", listener: (worker: Worker) => void): Cluster;
 | 
					 | 
				
			||||||
    function once(event: "exit", listener: (worker: Worker, code: number, signal: string) => void): Cluster;
 | 
					 | 
				
			||||||
    function once(event: "fork", listener: (worker: Worker) => void): Cluster;
 | 
					 | 
				
			||||||
    function once(event: "listening", listener: (worker: Worker, address: Address) => void): Cluster;
 | 
					 | 
				
			||||||
    function once(event: "message", listener: (worker: Worker, message: any, handle: net.Socket | net.Server) => void): Cluster;  // the handle is a net.Socket or net.Server object, or undefined.
 | 
					 | 
				
			||||||
    function once(event: "online", listener: (worker: Worker) => void): Cluster;
 | 
					 | 
				
			||||||
    function once(event: "setup", listener: (settings: ClusterSettings) => void): Cluster;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function removeListener(event: string, listener: (...args: any[]) => void): Cluster;
 | 
					 | 
				
			||||||
    function removeAllListeners(event?: string): Cluster;
 | 
					 | 
				
			||||||
    function setMaxListeners(n: number): Cluster;
 | 
					 | 
				
			||||||
    function getMaxListeners(): number;
 | 
					 | 
				
			||||||
    function listeners(event: string): Function[];
 | 
					 | 
				
			||||||
    function listenerCount(type: string): number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function prependListener(event: string, listener: (...args: any[]) => void): Cluster;
 | 
					 | 
				
			||||||
    function prependListener(event: "disconnect", listener: (worker: Worker) => void): Cluster;
 | 
					 | 
				
			||||||
    function prependListener(event: "exit", listener: (worker: Worker, code: number, signal: string) => void): Cluster;
 | 
					 | 
				
			||||||
    function prependListener(event: "fork", listener: (worker: Worker) => void): Cluster;
 | 
					 | 
				
			||||||
    function prependListener(event: "listening", listener: (worker: Worker, address: Address) => void): Cluster;
 | 
					 | 
				
			||||||
     // the handle is a net.Socket or net.Server object, or undefined.
 | 
					 | 
				
			||||||
    function prependListener(event: "message", listener: (worker: Worker, message: any, handle: net.Socket | net.Server) => void): Cluster;
 | 
					 | 
				
			||||||
    function prependListener(event: "online", listener: (worker: Worker) => void): Cluster;
 | 
					 | 
				
			||||||
    function prependListener(event: "setup", listener: (settings: ClusterSettings) => void): Cluster;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function prependOnceListener(event: string, listener: (...args: any[]) => void): Cluster;
 | 
					 | 
				
			||||||
    function prependOnceListener(event: "disconnect", listener: (worker: Worker) => void): Cluster;
 | 
					 | 
				
			||||||
    function prependOnceListener(event: "exit", listener: (worker: Worker, code: number, signal: string) => void): Cluster;
 | 
					 | 
				
			||||||
    function prependOnceListener(event: "fork", listener: (worker: Worker) => void): Cluster;
 | 
					 | 
				
			||||||
    function prependOnceListener(event: "listening", listener: (worker: Worker, address: Address) => void): Cluster;
 | 
					 | 
				
			||||||
     // the handle is a net.Socket or net.Server object, or undefined.
 | 
					 | 
				
			||||||
    function prependOnceListener(event: "message", listener: (worker: Worker, message: any, handle: net.Socket | net.Server) => void): Cluster;
 | 
					 | 
				
			||||||
    function prependOnceListener(event: "online", listener: (worker: Worker) => void): Cluster;
 | 
					 | 
				
			||||||
    function prependOnceListener(event: "setup", listener: (settings: ClusterSettings) => void): Cluster;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function eventNames(): string[];
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										3
									
								
								node_modules/@types/node/console.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										3
									
								
								node_modules/@types/node/console.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,3 +0,0 @@
 | 
				
			|||||||
declare module "console" {
 | 
					 | 
				
			||||||
    export = console;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										279
									
								
								node_modules/@types/node/constants.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										279
									
								
								node_modules/@types/node/constants.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,279 +0,0 @@
 | 
				
			|||||||
declare module "constants" {
 | 
					 | 
				
			||||||
    const E2BIG: number;
 | 
					 | 
				
			||||||
    const EACCES: number;
 | 
					 | 
				
			||||||
    const EADDRINUSE: number;
 | 
					 | 
				
			||||||
    const EADDRNOTAVAIL: number;
 | 
					 | 
				
			||||||
    const EAFNOSUPPORT: number;
 | 
					 | 
				
			||||||
    const EAGAIN: number;
 | 
					 | 
				
			||||||
    const EALREADY: number;
 | 
					 | 
				
			||||||
    const EBADF: number;
 | 
					 | 
				
			||||||
    const EBADMSG: number;
 | 
					 | 
				
			||||||
    const EBUSY: number;
 | 
					 | 
				
			||||||
    const ECANCELED: number;
 | 
					 | 
				
			||||||
    const ECHILD: number;
 | 
					 | 
				
			||||||
    const ECONNABORTED: number;
 | 
					 | 
				
			||||||
    const ECONNREFUSED: number;
 | 
					 | 
				
			||||||
    const ECONNRESET: number;
 | 
					 | 
				
			||||||
    const EDEADLK: number;
 | 
					 | 
				
			||||||
    const EDESTADDRREQ: number;
 | 
					 | 
				
			||||||
    const EDOM: number;
 | 
					 | 
				
			||||||
    const EEXIST: number;
 | 
					 | 
				
			||||||
    const EFAULT: number;
 | 
					 | 
				
			||||||
    const EFBIG: number;
 | 
					 | 
				
			||||||
    const EHOSTUNREACH: number;
 | 
					 | 
				
			||||||
    const EIDRM: number;
 | 
					 | 
				
			||||||
    const EILSEQ: number;
 | 
					 | 
				
			||||||
    const EINPROGRESS: number;
 | 
					 | 
				
			||||||
    const EINTR: number;
 | 
					 | 
				
			||||||
    const EINVAL: number;
 | 
					 | 
				
			||||||
    const EIO: number;
 | 
					 | 
				
			||||||
    const EISCONN: number;
 | 
					 | 
				
			||||||
    const EISDIR: number;
 | 
					 | 
				
			||||||
    const ELOOP: number;
 | 
					 | 
				
			||||||
    const EMFILE: number;
 | 
					 | 
				
			||||||
    const EMLINK: number;
 | 
					 | 
				
			||||||
    const EMSGSIZE: number;
 | 
					 | 
				
			||||||
    const ENAMETOOLONG: number;
 | 
					 | 
				
			||||||
    const ENETDOWN: number;
 | 
					 | 
				
			||||||
    const ENETRESET: number;
 | 
					 | 
				
			||||||
    const ENETUNREACH: number;
 | 
					 | 
				
			||||||
    const ENFILE: number;
 | 
					 | 
				
			||||||
    const ENOBUFS: number;
 | 
					 | 
				
			||||||
    const ENODATA: number;
 | 
					 | 
				
			||||||
    const ENODEV: number;
 | 
					 | 
				
			||||||
    const ENOENT: number;
 | 
					 | 
				
			||||||
    const ENOEXEC: number;
 | 
					 | 
				
			||||||
    const ENOLCK: number;
 | 
					 | 
				
			||||||
    const ENOLINK: number;
 | 
					 | 
				
			||||||
    const ENOMEM: number;
 | 
					 | 
				
			||||||
    const ENOMSG: number;
 | 
					 | 
				
			||||||
    const ENOPROTOOPT: number;
 | 
					 | 
				
			||||||
    const ENOSPC: number;
 | 
					 | 
				
			||||||
    const ENOSR: number;
 | 
					 | 
				
			||||||
    const ENOSTR: number;
 | 
					 | 
				
			||||||
    const ENOSYS: number;
 | 
					 | 
				
			||||||
    const ENOTCONN: number;
 | 
					 | 
				
			||||||
    const ENOTDIR: number;
 | 
					 | 
				
			||||||
    const ENOTEMPTY: number;
 | 
					 | 
				
			||||||
    const ENOTSOCK: number;
 | 
					 | 
				
			||||||
    const ENOTSUP: number;
 | 
					 | 
				
			||||||
    const ENOTTY: number;
 | 
					 | 
				
			||||||
    const ENXIO: number;
 | 
					 | 
				
			||||||
    const EOPNOTSUPP: number;
 | 
					 | 
				
			||||||
    const EOVERFLOW: number;
 | 
					 | 
				
			||||||
    const EPERM: number;
 | 
					 | 
				
			||||||
    const EPIPE: number;
 | 
					 | 
				
			||||||
    const EPROTO: number;
 | 
					 | 
				
			||||||
    const EPROTONOSUPPORT: number;
 | 
					 | 
				
			||||||
    const EPROTOTYPE: number;
 | 
					 | 
				
			||||||
    const ERANGE: number;
 | 
					 | 
				
			||||||
    const EROFS: number;
 | 
					 | 
				
			||||||
    const ESPIPE: number;
 | 
					 | 
				
			||||||
    const ESRCH: number;
 | 
					 | 
				
			||||||
    const ETIME: number;
 | 
					 | 
				
			||||||
    const ETIMEDOUT: number;
 | 
					 | 
				
			||||||
    const ETXTBSY: number;
 | 
					 | 
				
			||||||
    const EWOULDBLOCK: number;
 | 
					 | 
				
			||||||
    const EXDEV: number;
 | 
					 | 
				
			||||||
    const WSAEINTR: number;
 | 
					 | 
				
			||||||
    const WSAEBADF: number;
 | 
					 | 
				
			||||||
    const WSAEACCES: number;
 | 
					 | 
				
			||||||
    const WSAEFAULT: number;
 | 
					 | 
				
			||||||
    const WSAEINVAL: number;
 | 
					 | 
				
			||||||
    const WSAEMFILE: number;
 | 
					 | 
				
			||||||
    const WSAEWOULDBLOCK: number;
 | 
					 | 
				
			||||||
    const WSAEINPROGRESS: number;
 | 
					 | 
				
			||||||
    const WSAEALREADY: number;
 | 
					 | 
				
			||||||
    const WSAENOTSOCK: number;
 | 
					 | 
				
			||||||
    const WSAEDESTADDRREQ: number;
 | 
					 | 
				
			||||||
    const WSAEMSGSIZE: number;
 | 
					 | 
				
			||||||
    const WSAEPROTOTYPE: number;
 | 
					 | 
				
			||||||
    const WSAENOPROTOOPT: number;
 | 
					 | 
				
			||||||
    const WSAEPROTONOSUPPORT: number;
 | 
					 | 
				
			||||||
    const WSAESOCKTNOSUPPORT: number;
 | 
					 | 
				
			||||||
    const WSAEOPNOTSUPP: number;
 | 
					 | 
				
			||||||
    const WSAEPFNOSUPPORT: number;
 | 
					 | 
				
			||||||
    const WSAEAFNOSUPPORT: number;
 | 
					 | 
				
			||||||
    const WSAEADDRINUSE: number;
 | 
					 | 
				
			||||||
    const WSAEADDRNOTAVAIL: number;
 | 
					 | 
				
			||||||
    const WSAENETDOWN: number;
 | 
					 | 
				
			||||||
    const WSAENETUNREACH: number;
 | 
					 | 
				
			||||||
    const WSAENETRESET: number;
 | 
					 | 
				
			||||||
    const WSAECONNABORTED: number;
 | 
					 | 
				
			||||||
    const WSAECONNRESET: number;
 | 
					 | 
				
			||||||
    const WSAENOBUFS: number;
 | 
					 | 
				
			||||||
    const WSAEISCONN: number;
 | 
					 | 
				
			||||||
    const WSAENOTCONN: number;
 | 
					 | 
				
			||||||
    const WSAESHUTDOWN: number;
 | 
					 | 
				
			||||||
    const WSAETOOMANYREFS: number;
 | 
					 | 
				
			||||||
    const WSAETIMEDOUT: number;
 | 
					 | 
				
			||||||
    const WSAECONNREFUSED: number;
 | 
					 | 
				
			||||||
    const WSAELOOP: number;
 | 
					 | 
				
			||||||
    const WSAENAMETOOLONG: number;
 | 
					 | 
				
			||||||
    const WSAEHOSTDOWN: number;
 | 
					 | 
				
			||||||
    const WSAEHOSTUNREACH: number;
 | 
					 | 
				
			||||||
    const WSAENOTEMPTY: number;
 | 
					 | 
				
			||||||
    const WSAEPROCLIM: number;
 | 
					 | 
				
			||||||
    const WSAEUSERS: number;
 | 
					 | 
				
			||||||
    const WSAEDQUOT: number;
 | 
					 | 
				
			||||||
    const WSAESTALE: number;
 | 
					 | 
				
			||||||
    const WSAEREMOTE: number;
 | 
					 | 
				
			||||||
    const WSASYSNOTREADY: number;
 | 
					 | 
				
			||||||
    const WSAVERNOTSUPPORTED: number;
 | 
					 | 
				
			||||||
    const WSANOTINITIALISED: number;
 | 
					 | 
				
			||||||
    const WSAEDISCON: number;
 | 
					 | 
				
			||||||
    const WSAENOMORE: number;
 | 
					 | 
				
			||||||
    const WSAECANCELLED: number;
 | 
					 | 
				
			||||||
    const WSAEINVALIDPROCTABLE: number;
 | 
					 | 
				
			||||||
    const WSAEINVALIDPROVIDER: number;
 | 
					 | 
				
			||||||
    const WSAEPROVIDERFAILEDINIT: number;
 | 
					 | 
				
			||||||
    const WSASYSCALLFAILURE: number;
 | 
					 | 
				
			||||||
    const WSASERVICE_NOT_FOUND: number;
 | 
					 | 
				
			||||||
    const WSATYPE_NOT_FOUND: number;
 | 
					 | 
				
			||||||
    const WSA_E_NO_MORE: number;
 | 
					 | 
				
			||||||
    const WSA_E_CANCELLED: number;
 | 
					 | 
				
			||||||
    const WSAEREFUSED: number;
 | 
					 | 
				
			||||||
    const SIGHUP: number;
 | 
					 | 
				
			||||||
    const SIGINT: number;
 | 
					 | 
				
			||||||
    const SIGILL: number;
 | 
					 | 
				
			||||||
    const SIGABRT: number;
 | 
					 | 
				
			||||||
    const SIGFPE: number;
 | 
					 | 
				
			||||||
    const SIGKILL: number;
 | 
					 | 
				
			||||||
    const SIGSEGV: number;
 | 
					 | 
				
			||||||
    const SIGTERM: number;
 | 
					 | 
				
			||||||
    const SIGBREAK: number;
 | 
					 | 
				
			||||||
    const SIGWINCH: number;
 | 
					 | 
				
			||||||
    const SSL_OP_ALL: number;
 | 
					 | 
				
			||||||
    const SSL_OP_ALLOW_UNSAFE_LEGACY_RENEGOTIATION: number;
 | 
					 | 
				
			||||||
    const SSL_OP_CIPHER_SERVER_PREFERENCE: number;
 | 
					 | 
				
			||||||
    const SSL_OP_CISCO_ANYCONNECT: number;
 | 
					 | 
				
			||||||
    const SSL_OP_COOKIE_EXCHANGE: number;
 | 
					 | 
				
			||||||
    const SSL_OP_CRYPTOPRO_TLSEXT_BUG: number;
 | 
					 | 
				
			||||||
    const SSL_OP_DONT_INSERT_EMPTY_FRAGMENTS: number;
 | 
					 | 
				
			||||||
    const SSL_OP_EPHEMERAL_RSA: number;
 | 
					 | 
				
			||||||
    const SSL_OP_LEGACY_SERVER_CONNECT: number;
 | 
					 | 
				
			||||||
    const SSL_OP_MICROSOFT_BIG_SSLV3_BUFFER: number;
 | 
					 | 
				
			||||||
    const SSL_OP_MICROSOFT_SESS_ID_BUG: number;
 | 
					 | 
				
			||||||
    const SSL_OP_MSIE_SSLV2_RSA_PADDING: number;
 | 
					 | 
				
			||||||
    const SSL_OP_NETSCAPE_CA_DN_BUG: number;
 | 
					 | 
				
			||||||
    const SSL_OP_NETSCAPE_CHALLENGE_BUG: number;
 | 
					 | 
				
			||||||
    const SSL_OP_NETSCAPE_DEMO_CIPHER_CHANGE_BUG: number;
 | 
					 | 
				
			||||||
    const SSL_OP_NETSCAPE_REUSE_CIPHER_CHANGE_BUG: number;
 | 
					 | 
				
			||||||
    const SSL_OP_NO_COMPRESSION: number;
 | 
					 | 
				
			||||||
    const SSL_OP_NO_QUERY_MTU: number;
 | 
					 | 
				
			||||||
    const SSL_OP_NO_SESSION_RESUMPTION_ON_RENEGOTIATION: number;
 | 
					 | 
				
			||||||
    const SSL_OP_NO_SSLv2: number;
 | 
					 | 
				
			||||||
    const SSL_OP_NO_SSLv3: number;
 | 
					 | 
				
			||||||
    const SSL_OP_NO_TICKET: number;
 | 
					 | 
				
			||||||
    const SSL_OP_NO_TLSv1: number;
 | 
					 | 
				
			||||||
    const SSL_OP_NO_TLSv1_1: number;
 | 
					 | 
				
			||||||
    const SSL_OP_NO_TLSv1_2: number;
 | 
					 | 
				
			||||||
    const SSL_OP_PKCS1_CHECK_1: number;
 | 
					 | 
				
			||||||
    const SSL_OP_PKCS1_CHECK_2: number;
 | 
					 | 
				
			||||||
    const SSL_OP_SINGLE_DH_USE: number;
 | 
					 | 
				
			||||||
    const SSL_OP_SINGLE_ECDH_USE: number;
 | 
					 | 
				
			||||||
    const SSL_OP_SSLEAY_080_CLIENT_DH_BUG: number;
 | 
					 | 
				
			||||||
    const SSL_OP_SSLREF2_REUSE_CERT_TYPE_BUG: number;
 | 
					 | 
				
			||||||
    const SSL_OP_TLS_BLOCK_PADDING_BUG: number;
 | 
					 | 
				
			||||||
    const SSL_OP_TLS_D5_BUG: number;
 | 
					 | 
				
			||||||
    const SSL_OP_TLS_ROLLBACK_BUG: number;
 | 
					 | 
				
			||||||
    const ENGINE_METHOD_DSA: number;
 | 
					 | 
				
			||||||
    const ENGINE_METHOD_DH: number;
 | 
					 | 
				
			||||||
    const ENGINE_METHOD_RAND: number;
 | 
					 | 
				
			||||||
    const ENGINE_METHOD_ECDH: number;
 | 
					 | 
				
			||||||
    const ENGINE_METHOD_ECDSA: number;
 | 
					 | 
				
			||||||
    const ENGINE_METHOD_CIPHERS: number;
 | 
					 | 
				
			||||||
    const ENGINE_METHOD_DIGESTS: number;
 | 
					 | 
				
			||||||
    const ENGINE_METHOD_STORE: number;
 | 
					 | 
				
			||||||
    const ENGINE_METHOD_PKEY_METHS: number;
 | 
					 | 
				
			||||||
    const ENGINE_METHOD_PKEY_ASN1_METHS: number;
 | 
					 | 
				
			||||||
    const ENGINE_METHOD_ALL: number;
 | 
					 | 
				
			||||||
    const ENGINE_METHOD_NONE: number;
 | 
					 | 
				
			||||||
    const DH_CHECK_P_NOT_SAFE_PRIME: number;
 | 
					 | 
				
			||||||
    const DH_CHECK_P_NOT_PRIME: number;
 | 
					 | 
				
			||||||
    const DH_UNABLE_TO_CHECK_GENERATOR: number;
 | 
					 | 
				
			||||||
    const DH_NOT_SUITABLE_GENERATOR: number;
 | 
					 | 
				
			||||||
    const NPN_ENABLED: number;
 | 
					 | 
				
			||||||
    const RSA_PKCS1_PADDING: number;
 | 
					 | 
				
			||||||
    const RSA_SSLV23_PADDING: number;
 | 
					 | 
				
			||||||
    const RSA_NO_PADDING: number;
 | 
					 | 
				
			||||||
    const RSA_PKCS1_OAEP_PADDING: number;
 | 
					 | 
				
			||||||
    const RSA_X931_PADDING: number;
 | 
					 | 
				
			||||||
    const RSA_PKCS1_PSS_PADDING: number;
 | 
					 | 
				
			||||||
    const POINT_CONVERSION_COMPRESSED: number;
 | 
					 | 
				
			||||||
    const POINT_CONVERSION_UNCOMPRESSED: number;
 | 
					 | 
				
			||||||
    const POINT_CONVERSION_HYBRID: number;
 | 
					 | 
				
			||||||
    const O_RDONLY: number;
 | 
					 | 
				
			||||||
    const O_WRONLY: number;
 | 
					 | 
				
			||||||
    const O_RDWR: number;
 | 
					 | 
				
			||||||
    const S_IFMT: number;
 | 
					 | 
				
			||||||
    const S_IFREG: number;
 | 
					 | 
				
			||||||
    const S_IFDIR: number;
 | 
					 | 
				
			||||||
    const S_IFCHR: number;
 | 
					 | 
				
			||||||
    const S_IFBLK: number;
 | 
					 | 
				
			||||||
    const S_IFIFO: number;
 | 
					 | 
				
			||||||
    const S_IFSOCK: number;
 | 
					 | 
				
			||||||
    const S_IRWXU: number;
 | 
					 | 
				
			||||||
    const S_IRUSR: number;
 | 
					 | 
				
			||||||
    const S_IWUSR: number;
 | 
					 | 
				
			||||||
    const S_IXUSR: number;
 | 
					 | 
				
			||||||
    const S_IRWXG: number;
 | 
					 | 
				
			||||||
    const S_IRGRP: number;
 | 
					 | 
				
			||||||
    const S_IWGRP: number;
 | 
					 | 
				
			||||||
    const S_IXGRP: number;
 | 
					 | 
				
			||||||
    const S_IRWXO: number;
 | 
					 | 
				
			||||||
    const S_IROTH: number;
 | 
					 | 
				
			||||||
    const S_IWOTH: number;
 | 
					 | 
				
			||||||
    const S_IXOTH: number;
 | 
					 | 
				
			||||||
    const S_IFLNK: number;
 | 
					 | 
				
			||||||
    const O_CREAT: number;
 | 
					 | 
				
			||||||
    const O_EXCL: number;
 | 
					 | 
				
			||||||
    const O_NOCTTY: number;
 | 
					 | 
				
			||||||
    const O_DIRECTORY: number;
 | 
					 | 
				
			||||||
    const O_NOATIME: number;
 | 
					 | 
				
			||||||
    const O_NOFOLLOW: number;
 | 
					 | 
				
			||||||
    const O_SYNC: number;
 | 
					 | 
				
			||||||
    const O_DSYNC: number;
 | 
					 | 
				
			||||||
    const O_SYMLINK: number;
 | 
					 | 
				
			||||||
    const O_DIRECT: number;
 | 
					 | 
				
			||||||
    const O_NONBLOCK: number;
 | 
					 | 
				
			||||||
    const O_TRUNC: number;
 | 
					 | 
				
			||||||
    const O_APPEND: number;
 | 
					 | 
				
			||||||
    const F_OK: number;
 | 
					 | 
				
			||||||
    const R_OK: number;
 | 
					 | 
				
			||||||
    const W_OK: number;
 | 
					 | 
				
			||||||
    const X_OK: number;
 | 
					 | 
				
			||||||
    const COPYFILE_EXCL: number;
 | 
					 | 
				
			||||||
    const COPYFILE_FICLONE: number;
 | 
					 | 
				
			||||||
    const COPYFILE_FICLONE_FORCE: number;
 | 
					 | 
				
			||||||
    const UV_UDP_REUSEADDR: number;
 | 
					 | 
				
			||||||
    const SIGQUIT: number;
 | 
					 | 
				
			||||||
    const SIGTRAP: number;
 | 
					 | 
				
			||||||
    const SIGIOT: number;
 | 
					 | 
				
			||||||
    const SIGBUS: number;
 | 
					 | 
				
			||||||
    const SIGUSR1: number;
 | 
					 | 
				
			||||||
    const SIGUSR2: number;
 | 
					 | 
				
			||||||
    const SIGPIPE: number;
 | 
					 | 
				
			||||||
    const SIGALRM: number;
 | 
					 | 
				
			||||||
    const SIGCHLD: number;
 | 
					 | 
				
			||||||
    const SIGSTKFLT: number;
 | 
					 | 
				
			||||||
    const SIGCONT: number;
 | 
					 | 
				
			||||||
    const SIGSTOP: number;
 | 
					 | 
				
			||||||
    const SIGTSTP: number;
 | 
					 | 
				
			||||||
    const SIGTTIN: number;
 | 
					 | 
				
			||||||
    const SIGTTOU: number;
 | 
					 | 
				
			||||||
    const SIGURG: number;
 | 
					 | 
				
			||||||
    const SIGXCPU: number;
 | 
					 | 
				
			||||||
    const SIGXFSZ: number;
 | 
					 | 
				
			||||||
    const SIGVTALRM: number;
 | 
					 | 
				
			||||||
    const SIGPROF: number;
 | 
					 | 
				
			||||||
    const SIGIO: number;
 | 
					 | 
				
			||||||
    const SIGPOLL: number;
 | 
					 | 
				
			||||||
    const SIGPWR: number;
 | 
					 | 
				
			||||||
    const SIGSYS: number;
 | 
					 | 
				
			||||||
    const SIGUNUSED: number;
 | 
					 | 
				
			||||||
    const defaultCoreCipherList: string;
 | 
					 | 
				
			||||||
    const defaultCipherList: string;
 | 
					 | 
				
			||||||
    const ENGINE_METHOD_RSA: number;
 | 
					 | 
				
			||||||
    const ALPN_ENABLED: number;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										602
									
								
								node_modules/@types/node/crypto.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										602
									
								
								node_modules/@types/node/crypto.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,602 +0,0 @@
 | 
				
			|||||||
declare module "crypto" {
 | 
					 | 
				
			||||||
    import * as stream from "stream";
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface Certificate {
 | 
					 | 
				
			||||||
        exportChallenge(spkac: BinaryLike): Buffer;
 | 
					 | 
				
			||||||
        exportPublicKey(spkac: BinaryLike): Buffer;
 | 
					 | 
				
			||||||
        verifySpkac(spkac: Binary): boolean;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    const Certificate: {
 | 
					 | 
				
			||||||
        new(): Certificate;
 | 
					 | 
				
			||||||
        (): Certificate;
 | 
					 | 
				
			||||||
    };
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    namespace constants { // https://nodejs.org/dist/latest-v10.x/docs/api/crypto.html#crypto_crypto_constants
 | 
					 | 
				
			||||||
        const OPENSSL_VERSION_NUMBER: number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /** Applies multiple bug workarounds within OpenSSL. See https://www.openssl.org/docs/man1.0.2/ssl/SSL_CTX_set_options.html for detail. */
 | 
					 | 
				
			||||||
        const SSL_OP_ALL: number;
 | 
					 | 
				
			||||||
        /** Allows legacy insecure renegotiation between OpenSSL and unpatched clients or servers. See https://www.openssl.org/docs/man1.0.2/ssl/SSL_CTX_set_options.html. */
 | 
					 | 
				
			||||||
        const SSL_OP_ALLOW_UNSAFE_LEGACY_RENEGOTIATION: number;
 | 
					 | 
				
			||||||
        /** Attempts to use the server's preferences instead of the client's when selecting a cipher. See https://www.openssl.org/docs/man1.0.2/ssl/SSL_CTX_set_options.html. */
 | 
					 | 
				
			||||||
        const SSL_OP_CIPHER_SERVER_PREFERENCE: number;
 | 
					 | 
				
			||||||
        /** Instructs OpenSSL to use Cisco's "speshul" version of DTLS_BAD_VER. */
 | 
					 | 
				
			||||||
        const SSL_OP_CISCO_ANYCONNECT: number;
 | 
					 | 
				
			||||||
        /** Instructs OpenSSL to turn on cookie exchange. */
 | 
					 | 
				
			||||||
        const SSL_OP_COOKIE_EXCHANGE: number;
 | 
					 | 
				
			||||||
        /** Instructs OpenSSL to add server-hello extension from an early version of the cryptopro draft. */
 | 
					 | 
				
			||||||
        const SSL_OP_CRYPTOPRO_TLSEXT_BUG: number;
 | 
					 | 
				
			||||||
        /** Instructs OpenSSL to disable a SSL 3.0/TLS 1.0 vulnerability workaround added in OpenSSL 0.9.6d. */
 | 
					 | 
				
			||||||
        const SSL_OP_DONT_INSERT_EMPTY_FRAGMENTS: number;
 | 
					 | 
				
			||||||
        /** Instructs OpenSSL to always use the tmp_rsa key when performing RSA operations. */
 | 
					 | 
				
			||||||
        const SSL_OP_EPHEMERAL_RSA: number;
 | 
					 | 
				
			||||||
        /** Allows initial connection to servers that do not support RI. */
 | 
					 | 
				
			||||||
        const SSL_OP_LEGACY_SERVER_CONNECT: number;
 | 
					 | 
				
			||||||
        const SSL_OP_MICROSOFT_BIG_SSLV3_BUFFER: number;
 | 
					 | 
				
			||||||
        const SSL_OP_MICROSOFT_SESS_ID_BUG: number;
 | 
					 | 
				
			||||||
        /** Instructs OpenSSL to disable the workaround for a man-in-the-middle protocol-version vulnerability in the SSL 2.0 server implementation. */
 | 
					 | 
				
			||||||
        const SSL_OP_MSIE_SSLV2_RSA_PADDING: number;
 | 
					 | 
				
			||||||
        const SSL_OP_NETSCAPE_CA_DN_BUG: number;
 | 
					 | 
				
			||||||
        const SSL_OP_NETSCAPE_CHALLENGE_BUG: number;
 | 
					 | 
				
			||||||
        const SSL_OP_NETSCAPE_DEMO_CIPHER_CHANGE_BUG: number;
 | 
					 | 
				
			||||||
        const SSL_OP_NETSCAPE_REUSE_CIPHER_CHANGE_BUG: number;
 | 
					 | 
				
			||||||
        /** Instructs OpenSSL to disable support for SSL/TLS compression. */
 | 
					 | 
				
			||||||
        const SSL_OP_NO_COMPRESSION: number;
 | 
					 | 
				
			||||||
        const SSL_OP_NO_QUERY_MTU: number;
 | 
					 | 
				
			||||||
        /** Instructs OpenSSL to always start a new session when performing renegotiation. */
 | 
					 | 
				
			||||||
        const SSL_OP_NO_SESSION_RESUMPTION_ON_RENEGOTIATION: number;
 | 
					 | 
				
			||||||
        const SSL_OP_NO_SSLv2: number;
 | 
					 | 
				
			||||||
        const SSL_OP_NO_SSLv3: number;
 | 
					 | 
				
			||||||
        const SSL_OP_NO_TICKET: number;
 | 
					 | 
				
			||||||
        const SSL_OP_NO_TLSv1: number;
 | 
					 | 
				
			||||||
        const SSL_OP_NO_TLSv1_1: number;
 | 
					 | 
				
			||||||
        const SSL_OP_NO_TLSv1_2: number;
 | 
					 | 
				
			||||||
        const SSL_OP_PKCS1_CHECK_1: number;
 | 
					 | 
				
			||||||
        const SSL_OP_PKCS1_CHECK_2: number;
 | 
					 | 
				
			||||||
        /** Instructs OpenSSL to always create a new key when using temporary/ephemeral DH parameters. */
 | 
					 | 
				
			||||||
        const SSL_OP_SINGLE_DH_USE: number;
 | 
					 | 
				
			||||||
        /** Instructs OpenSSL to always create a new key when using temporary/ephemeral ECDH parameters. */
 | 
					 | 
				
			||||||
        const SSL_OP_SINGLE_ECDH_USE: number;
 | 
					 | 
				
			||||||
        const SSL_OP_SSLEAY_080_CLIENT_DH_BUG: number;
 | 
					 | 
				
			||||||
        const SSL_OP_SSLREF2_REUSE_CERT_TYPE_BUG: number;
 | 
					 | 
				
			||||||
        const SSL_OP_TLS_BLOCK_PADDING_BUG: number;
 | 
					 | 
				
			||||||
        const SSL_OP_TLS_D5_BUG: number;
 | 
					 | 
				
			||||||
        /** Instructs OpenSSL to disable version rollback attack detection. */
 | 
					 | 
				
			||||||
        const SSL_OP_TLS_ROLLBACK_BUG: number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        const ENGINE_METHOD_RSA: number;
 | 
					 | 
				
			||||||
        const ENGINE_METHOD_DSA: number;
 | 
					 | 
				
			||||||
        const ENGINE_METHOD_DH: number;
 | 
					 | 
				
			||||||
        const ENGINE_METHOD_RAND: number;
 | 
					 | 
				
			||||||
        const ENGINE_METHOD_EC: number;
 | 
					 | 
				
			||||||
        const ENGINE_METHOD_CIPHERS: number;
 | 
					 | 
				
			||||||
        const ENGINE_METHOD_DIGESTS: number;
 | 
					 | 
				
			||||||
        const ENGINE_METHOD_PKEY_METHS: number;
 | 
					 | 
				
			||||||
        const ENGINE_METHOD_PKEY_ASN1_METHS: number;
 | 
					 | 
				
			||||||
        const ENGINE_METHOD_ALL: number;
 | 
					 | 
				
			||||||
        const ENGINE_METHOD_NONE: number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        const DH_CHECK_P_NOT_SAFE_PRIME: number;
 | 
					 | 
				
			||||||
        const DH_CHECK_P_NOT_PRIME: number;
 | 
					 | 
				
			||||||
        const DH_UNABLE_TO_CHECK_GENERATOR: number;
 | 
					 | 
				
			||||||
        const DH_NOT_SUITABLE_GENERATOR: number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        const ALPN_ENABLED: number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        const RSA_PKCS1_PADDING: number;
 | 
					 | 
				
			||||||
        const RSA_SSLV23_PADDING: number;
 | 
					 | 
				
			||||||
        const RSA_NO_PADDING: number;
 | 
					 | 
				
			||||||
        const RSA_PKCS1_OAEP_PADDING: number;
 | 
					 | 
				
			||||||
        const RSA_X931_PADDING: number;
 | 
					 | 
				
			||||||
        const RSA_PKCS1_PSS_PADDING: number;
 | 
					 | 
				
			||||||
        /** Sets the salt length for RSA_PKCS1_PSS_PADDING to the digest size when signing or verifying. */
 | 
					 | 
				
			||||||
        const RSA_PSS_SALTLEN_DIGEST: number;
 | 
					 | 
				
			||||||
        /** Sets the salt length for RSA_PKCS1_PSS_PADDING to the maximum permissible value when signing data. */
 | 
					 | 
				
			||||||
        const RSA_PSS_SALTLEN_MAX_SIGN: number;
 | 
					 | 
				
			||||||
        /** Causes the salt length for RSA_PKCS1_PSS_PADDING to be determined automatically when verifying a signature. */
 | 
					 | 
				
			||||||
        const RSA_PSS_SALTLEN_AUTO: number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        const POINT_CONVERSION_COMPRESSED: number;
 | 
					 | 
				
			||||||
        const POINT_CONVERSION_UNCOMPRESSED: number;
 | 
					 | 
				
			||||||
        const POINT_CONVERSION_HYBRID: number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /** Specifies the built-in default cipher list used by Node.js (colon-separated values). */
 | 
					 | 
				
			||||||
        const defaultCoreCipherList: string;
 | 
					 | 
				
			||||||
        /** Specifies the active default cipher list used by the current Node.js process  (colon-separated values). */
 | 
					 | 
				
			||||||
        const defaultCipherList: string;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    /** @deprecated since v10.0.0 */
 | 
					 | 
				
			||||||
    const fips: boolean;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function createHash(algorithm: string, options?: stream.TransformOptions): Hash;
 | 
					 | 
				
			||||||
    function createHmac(algorithm: string, key: BinaryLike, options?: stream.TransformOptions): Hmac;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    type Utf8AsciiLatin1Encoding = "utf8" | "ascii" | "latin1";
 | 
					 | 
				
			||||||
    type HexBase64Latin1Encoding = "latin1" | "hex" | "base64";
 | 
					 | 
				
			||||||
    type Utf8AsciiBinaryEncoding = "utf8" | "ascii" | "binary";
 | 
					 | 
				
			||||||
    type HexBase64BinaryEncoding = "binary" | "base64" | "hex";
 | 
					 | 
				
			||||||
    type ECDHKeyFormat = "compressed" | "uncompressed" | "hybrid";
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    class Hash extends stream.Duplex {
 | 
					 | 
				
			||||||
        private constructor();
 | 
					 | 
				
			||||||
        update(data: BinaryLike): Hash;
 | 
					 | 
				
			||||||
        update(data: string, input_encoding: Utf8AsciiLatin1Encoding): Hash;
 | 
					 | 
				
			||||||
        digest(): Buffer;
 | 
					 | 
				
			||||||
        digest(encoding: HexBase64Latin1Encoding): string;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    class Hmac extends stream.Duplex {
 | 
					 | 
				
			||||||
        private constructor();
 | 
					 | 
				
			||||||
        update(data: BinaryLike): Hmac;
 | 
					 | 
				
			||||||
        update(data: string, input_encoding: Utf8AsciiLatin1Encoding): Hmac;
 | 
					 | 
				
			||||||
        digest(): Buffer;
 | 
					 | 
				
			||||||
        digest(encoding: HexBase64Latin1Encoding): string;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    export type KeyObjectType = 'secret' | 'public' | 'private';
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface KeyExportOptions<T extends KeyFormat> {
 | 
					 | 
				
			||||||
        type: 'pkcs1' | 'spki' | 'pkcs8' | 'sec1';
 | 
					 | 
				
			||||||
        format: T;
 | 
					 | 
				
			||||||
        cipher?: string;
 | 
					 | 
				
			||||||
        passphrase?: string | Buffer;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    class KeyObject {
 | 
					 | 
				
			||||||
        private constructor();
 | 
					 | 
				
			||||||
        asymmetricKeyType?: KeyType;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * For asymmetric keys, this property represents the size of the embedded key in
 | 
					 | 
				
			||||||
         * bytes. This property is `undefined` for symmetric keys.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        asymmetricKeySize?: number;
 | 
					 | 
				
			||||||
        export(options: KeyExportOptions<'pem'>): string | Buffer;
 | 
					 | 
				
			||||||
        export(options?: KeyExportOptions<'der'>): Buffer;
 | 
					 | 
				
			||||||
        symmetricSize?: number;
 | 
					 | 
				
			||||||
        type: KeyObjectType;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    type CipherCCMTypes = 'aes-128-ccm' | 'aes-192-ccm' | 'aes-256-ccm';
 | 
					 | 
				
			||||||
    type CipherGCMTypes = 'aes-128-gcm' | 'aes-192-gcm' | 'aes-256-gcm';
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    type Binary = Buffer | NodeJS.TypedArray | DataView;
 | 
					 | 
				
			||||||
    type BinaryLike = string | Binary;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    type CipherKey = BinaryLike | KeyObject;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface CipherCCMOptions extends stream.TransformOptions {
 | 
					 | 
				
			||||||
        authTagLength: number;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    interface CipherGCMOptions extends stream.TransformOptions {
 | 
					 | 
				
			||||||
        authTagLength?: number;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    /** @deprecated since v10.0.0 use createCipheriv() */
 | 
					 | 
				
			||||||
    function createCipher(algorithm: CipherCCMTypes, password: BinaryLike, options: CipherCCMOptions): CipherCCM;
 | 
					 | 
				
			||||||
    /** @deprecated since v10.0.0 use createCipheriv() */
 | 
					 | 
				
			||||||
    function createCipher(algorithm: CipherGCMTypes, password: BinaryLike, options?: CipherGCMOptions): CipherGCM;
 | 
					 | 
				
			||||||
    /** @deprecated since v10.0.0 use createCipheriv() */
 | 
					 | 
				
			||||||
    function createCipher(algorithm: string, password: BinaryLike, options?: stream.TransformOptions): Cipher;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function createCipheriv(
 | 
					 | 
				
			||||||
        algorithm: CipherCCMTypes,
 | 
					 | 
				
			||||||
        key: CipherKey,
 | 
					 | 
				
			||||||
        iv: BinaryLike | null,
 | 
					 | 
				
			||||||
        options: CipherCCMOptions
 | 
					 | 
				
			||||||
    ): CipherCCM;
 | 
					 | 
				
			||||||
    function createCipheriv(
 | 
					 | 
				
			||||||
        algorithm: CipherGCMTypes,
 | 
					 | 
				
			||||||
        key: CipherKey,
 | 
					 | 
				
			||||||
        iv: BinaryLike | null,
 | 
					 | 
				
			||||||
        options?: CipherGCMOptions
 | 
					 | 
				
			||||||
    ): CipherGCM;
 | 
					 | 
				
			||||||
    function createCipheriv(
 | 
					 | 
				
			||||||
        algorithm: string, key: CipherKey, iv: BinaryLike | null, options?: stream.TransformOptions
 | 
					 | 
				
			||||||
    ): Cipher;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    class Cipher extends stream.Duplex {
 | 
					 | 
				
			||||||
        private constructor();
 | 
					 | 
				
			||||||
        update(data: BinaryLike): Buffer;
 | 
					 | 
				
			||||||
        update(data: string, input_encoding: Utf8AsciiBinaryEncoding): Buffer;
 | 
					 | 
				
			||||||
        update(data: Binary, input_encoding: undefined, output_encoding: HexBase64BinaryEncoding): string;
 | 
					 | 
				
			||||||
        update(data: string, input_encoding: Utf8AsciiBinaryEncoding | undefined, output_encoding: HexBase64BinaryEncoding): string;
 | 
					 | 
				
			||||||
        final(): Buffer;
 | 
					 | 
				
			||||||
        final(output_encoding: string): string;
 | 
					 | 
				
			||||||
        setAutoPadding(auto_padding?: boolean): this;
 | 
					 | 
				
			||||||
        // getAuthTag(): Buffer;
 | 
					 | 
				
			||||||
        // setAAD(buffer: Buffer): this; // docs only say buffer
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    interface CipherCCM extends Cipher {
 | 
					 | 
				
			||||||
        setAAD(buffer: Buffer, options: { plaintextLength: number }): this;
 | 
					 | 
				
			||||||
        getAuthTag(): Buffer;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    interface CipherGCM extends Cipher {
 | 
					 | 
				
			||||||
        setAAD(buffer: Buffer, options?: { plaintextLength: number }): this;
 | 
					 | 
				
			||||||
        getAuthTag(): Buffer;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    /** @deprecated since v10.0.0 use createCipheriv() */
 | 
					 | 
				
			||||||
    function createDecipher(algorithm: CipherCCMTypes, password: BinaryLike, options: CipherCCMOptions): DecipherCCM;
 | 
					 | 
				
			||||||
    /** @deprecated since v10.0.0 use createCipheriv() */
 | 
					 | 
				
			||||||
    function createDecipher(algorithm: CipherGCMTypes, password: BinaryLike, options?: CipherGCMOptions): DecipherGCM;
 | 
					 | 
				
			||||||
    /** @deprecated since v10.0.0 use createCipheriv() */
 | 
					 | 
				
			||||||
    function createDecipher(algorithm: string, password: BinaryLike, options?: stream.TransformOptions): Decipher;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function createDecipheriv(
 | 
					 | 
				
			||||||
        algorithm: CipherCCMTypes,
 | 
					 | 
				
			||||||
        key: BinaryLike,
 | 
					 | 
				
			||||||
        iv: BinaryLike | null,
 | 
					 | 
				
			||||||
        options: CipherCCMOptions,
 | 
					 | 
				
			||||||
    ): DecipherCCM;
 | 
					 | 
				
			||||||
    function createDecipheriv(
 | 
					 | 
				
			||||||
        algorithm: CipherGCMTypes,
 | 
					 | 
				
			||||||
        key: BinaryLike,
 | 
					 | 
				
			||||||
        iv: BinaryLike | null,
 | 
					 | 
				
			||||||
        options?: CipherGCMOptions,
 | 
					 | 
				
			||||||
    ): DecipherGCM;
 | 
					 | 
				
			||||||
    function createDecipheriv(algorithm: string, key: BinaryLike, iv: BinaryLike | null, options?: stream.TransformOptions): Decipher;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    class Decipher extends stream.Duplex {
 | 
					 | 
				
			||||||
        private constructor();
 | 
					 | 
				
			||||||
        update(data: Binary): Buffer;
 | 
					 | 
				
			||||||
        update(data: string, input_encoding: HexBase64BinaryEncoding): Buffer;
 | 
					 | 
				
			||||||
        update(data: Binary, input_encoding: undefined, output_encoding: Utf8AsciiBinaryEncoding): string;
 | 
					 | 
				
			||||||
        update(data: string, input_encoding: HexBase64BinaryEncoding | undefined, output_encoding: Utf8AsciiBinaryEncoding): string;
 | 
					 | 
				
			||||||
        final(): Buffer;
 | 
					 | 
				
			||||||
        final(output_encoding: string): string;
 | 
					 | 
				
			||||||
        setAutoPadding(auto_padding?: boolean): this;
 | 
					 | 
				
			||||||
        // setAuthTag(tag: Binary): this;
 | 
					 | 
				
			||||||
        // setAAD(buffer: Binary): this;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    interface DecipherCCM extends Decipher {
 | 
					 | 
				
			||||||
        setAuthTag(buffer: Binary): this;
 | 
					 | 
				
			||||||
        setAAD(buffer: Binary, options: { plaintextLength: number }): this;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    interface DecipherGCM extends Decipher {
 | 
					 | 
				
			||||||
        setAuthTag(buffer: Binary): this;
 | 
					 | 
				
			||||||
        setAAD(buffer: Binary, options?: { plaintextLength: number }): this;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface PrivateKeyInput {
 | 
					 | 
				
			||||||
        key: string | Buffer;
 | 
					 | 
				
			||||||
        format?: KeyFormat;
 | 
					 | 
				
			||||||
        type?: 'pkcs1' | 'pkcs8' | 'sec1';
 | 
					 | 
				
			||||||
        passphrase?: string | Buffer;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface PublicKeyInput {
 | 
					 | 
				
			||||||
        key: string | Buffer;
 | 
					 | 
				
			||||||
        format?: KeyFormat;
 | 
					 | 
				
			||||||
        type?: 'pkcs1' | 'spki';
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function createPrivateKey(key: PrivateKeyInput | string | Buffer): KeyObject;
 | 
					 | 
				
			||||||
    function createPublicKey(key: PublicKeyInput | string | Buffer | KeyObject): KeyObject;
 | 
					 | 
				
			||||||
    function createSecretKey(key: Buffer): KeyObject;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function createSign(algorithm: string, options?: stream.WritableOptions): Signer;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface SigningOptions {
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * @See crypto.constants.RSA_PKCS1_PADDING
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        padding?: number;
 | 
					 | 
				
			||||||
        saltLength?: number;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface SignPrivateKeyInput extends PrivateKeyInput, SigningOptions {
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    type KeyLike = string | Buffer | KeyObject;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    class Signer extends stream.Writable {
 | 
					 | 
				
			||||||
        private constructor();
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        update(data: BinaryLike): Signer;
 | 
					 | 
				
			||||||
        update(data: string, input_encoding: Utf8AsciiLatin1Encoding): Signer;
 | 
					 | 
				
			||||||
        sign(private_key: SignPrivateKeyInput | KeyLike): Buffer;
 | 
					 | 
				
			||||||
        sign(private_key: SignPrivateKeyInput | KeyLike, output_format: HexBase64Latin1Encoding): string;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function createVerify(algorith: string, options?: stream.WritableOptions): Verify;
 | 
					 | 
				
			||||||
    class Verify extends stream.Writable {
 | 
					 | 
				
			||||||
        private constructor();
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        update(data: BinaryLike): Verify;
 | 
					 | 
				
			||||||
        update(data: string, input_encoding: Utf8AsciiLatin1Encoding): Verify;
 | 
					 | 
				
			||||||
        verify(object: Object | KeyLike, signature: Binary): boolean;
 | 
					 | 
				
			||||||
        verify(object: Object | KeyLike, signature: string, signature_format?: HexBase64Latin1Encoding): boolean;
 | 
					 | 
				
			||||||
        // https://nodejs.org/api/crypto.html#crypto_verifier_verify_object_signature_signature_format
 | 
					 | 
				
			||||||
        // The signature field accepts a TypedArray type, but it is only available starting ES2017
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    function createDiffieHellman(prime_length: number, generator?: number | Binary): DiffieHellman;
 | 
					 | 
				
			||||||
    function createDiffieHellman(prime: Binary): DiffieHellman;
 | 
					 | 
				
			||||||
    function createDiffieHellman(prime: string, prime_encoding: HexBase64Latin1Encoding): DiffieHellman;
 | 
					 | 
				
			||||||
    function createDiffieHellman(prime: string, prime_encoding: HexBase64Latin1Encoding, generator: number | Binary): DiffieHellman;
 | 
					 | 
				
			||||||
    function createDiffieHellman(prime: string, prime_encoding: HexBase64Latin1Encoding, generator: string, generator_encoding: HexBase64Latin1Encoding): DiffieHellman;
 | 
					 | 
				
			||||||
    class DiffieHellman {
 | 
					 | 
				
			||||||
        private constructor();
 | 
					 | 
				
			||||||
        generateKeys(): Buffer;
 | 
					 | 
				
			||||||
        generateKeys(encoding: HexBase64Latin1Encoding): string;
 | 
					 | 
				
			||||||
        computeSecret(other_public_key: Binary): Buffer;
 | 
					 | 
				
			||||||
        computeSecret(other_public_key: string, input_encoding: HexBase64Latin1Encoding): Buffer;
 | 
					 | 
				
			||||||
        computeSecret(other_public_key: Binary, output_encoding: HexBase64Latin1Encoding): string;
 | 
					 | 
				
			||||||
        computeSecret(other_public_key: string, input_encoding: HexBase64Latin1Encoding, output_encoding: HexBase64Latin1Encoding): string;
 | 
					 | 
				
			||||||
        getPrime(): Buffer;
 | 
					 | 
				
			||||||
        getPrime(encoding: HexBase64Latin1Encoding): string;
 | 
					 | 
				
			||||||
        getGenerator(): Buffer;
 | 
					 | 
				
			||||||
        getGenerator(encoding: HexBase64Latin1Encoding): string;
 | 
					 | 
				
			||||||
        getPublicKey(): Buffer;
 | 
					 | 
				
			||||||
        getPublicKey(encoding: HexBase64Latin1Encoding): string;
 | 
					 | 
				
			||||||
        getPrivateKey(): Buffer;
 | 
					 | 
				
			||||||
        getPrivateKey(encoding: HexBase64Latin1Encoding): string;
 | 
					 | 
				
			||||||
        setPublicKey(public_key: Binary): void;
 | 
					 | 
				
			||||||
        setPublicKey(public_key: string, encoding: string): void;
 | 
					 | 
				
			||||||
        setPrivateKey(private_key: Binary): void;
 | 
					 | 
				
			||||||
        setPrivateKey(private_key: string, encoding: string): void;
 | 
					 | 
				
			||||||
        verifyError: number;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    function getDiffieHellman(group_name: string): DiffieHellman;
 | 
					 | 
				
			||||||
    function pbkdf2(
 | 
					 | 
				
			||||||
        password: BinaryLike,
 | 
					 | 
				
			||||||
        salt: BinaryLike,
 | 
					 | 
				
			||||||
        iterations: number,
 | 
					 | 
				
			||||||
        keylen: number,
 | 
					 | 
				
			||||||
        digest: string,
 | 
					 | 
				
			||||||
        callback: (err: Error | null, derivedKey: Buffer) => any,
 | 
					 | 
				
			||||||
    ): void;
 | 
					 | 
				
			||||||
    function pbkdf2Sync(password: BinaryLike, salt: BinaryLike, iterations: number, keylen: number, digest: string): Buffer;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function randomBytes(size: number): Buffer;
 | 
					 | 
				
			||||||
    function randomBytes(size: number, callback: (err: Error | null, buf: Buffer) => void): void;
 | 
					 | 
				
			||||||
    function pseudoRandomBytes(size: number): Buffer;
 | 
					 | 
				
			||||||
    function pseudoRandomBytes(size: number, callback: (err: Error | null, buf: Buffer) => void): void;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function randomFillSync<T extends Binary>(buffer: T, offset?: number, size?: number): T;
 | 
					 | 
				
			||||||
    function randomFill<T extends Binary>(buffer: T, callback: (err: Error | null, buf: T) => void): void;
 | 
					 | 
				
			||||||
    function randomFill<T extends Binary>(buffer: T, offset: number, callback: (err: Error | null, buf: T) => void): void;
 | 
					 | 
				
			||||||
    function randomFill<T extends Binary>(buffer: T, offset: number, size: number, callback: (err: Error | null, buf: T) => void): void;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface ScryptOptions {
 | 
					 | 
				
			||||||
        N?: number;
 | 
					 | 
				
			||||||
        r?: number;
 | 
					 | 
				
			||||||
        p?: number;
 | 
					 | 
				
			||||||
        maxmem?: number;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    function scrypt(
 | 
					 | 
				
			||||||
        password: BinaryLike,
 | 
					 | 
				
			||||||
        salt: BinaryLike,
 | 
					 | 
				
			||||||
        keylen: number, callback: (err: Error | null, derivedKey: Buffer) => void,
 | 
					 | 
				
			||||||
    ): void;
 | 
					 | 
				
			||||||
    function scrypt(
 | 
					 | 
				
			||||||
        password: BinaryLike,
 | 
					 | 
				
			||||||
        salt: BinaryLike,
 | 
					 | 
				
			||||||
        keylen: number,
 | 
					 | 
				
			||||||
        options: ScryptOptions,
 | 
					 | 
				
			||||||
        callback: (err: Error | null, derivedKey: Buffer) => void,
 | 
					 | 
				
			||||||
    ): void;
 | 
					 | 
				
			||||||
    function scryptSync(password: BinaryLike, salt: BinaryLike, keylen: number, options?: ScryptOptions): Buffer;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface RsaPublicKey {
 | 
					 | 
				
			||||||
        key: KeyLike;
 | 
					 | 
				
			||||||
        padding?: number;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    interface RsaPrivateKey {
 | 
					 | 
				
			||||||
        key: KeyLike;
 | 
					 | 
				
			||||||
        passphrase?: string;
 | 
					 | 
				
			||||||
        padding?: number;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    function publicEncrypt(public_key: RsaPublicKey | KeyLike, buffer: Binary): Buffer;
 | 
					 | 
				
			||||||
    function privateDecrypt(private_key: RsaPrivateKey | KeyLike, buffer: Binary): Buffer;
 | 
					 | 
				
			||||||
    function privateEncrypt(private_key: RsaPrivateKey | KeyLike, buffer: Binary): Buffer;
 | 
					 | 
				
			||||||
    function publicDecrypt(public_key: RsaPublicKey | KeyLike, buffer: Binary): Buffer;
 | 
					 | 
				
			||||||
    function getCiphers(): string[];
 | 
					 | 
				
			||||||
    function getCurves(): string[];
 | 
					 | 
				
			||||||
    function getHashes(): string[];
 | 
					 | 
				
			||||||
    class ECDH {
 | 
					 | 
				
			||||||
        private constructor();
 | 
					 | 
				
			||||||
        static convertKey(
 | 
					 | 
				
			||||||
            key: BinaryLike,
 | 
					 | 
				
			||||||
            curve: string,
 | 
					 | 
				
			||||||
            inputEncoding?: HexBase64Latin1Encoding,
 | 
					 | 
				
			||||||
            outputEncoding?: "latin1" | "hex" | "base64",
 | 
					 | 
				
			||||||
            format?: "uncompressed" | "compressed" | "hybrid",
 | 
					 | 
				
			||||||
        ): Buffer | string;
 | 
					 | 
				
			||||||
        generateKeys(): Buffer;
 | 
					 | 
				
			||||||
        generateKeys(encoding: HexBase64Latin1Encoding, format?: ECDHKeyFormat): string;
 | 
					 | 
				
			||||||
        computeSecret(other_public_key: Binary): Buffer;
 | 
					 | 
				
			||||||
        computeSecret(other_public_key: string, input_encoding: HexBase64Latin1Encoding): Buffer;
 | 
					 | 
				
			||||||
        computeSecret(other_public_key: Binary, output_encoding: HexBase64Latin1Encoding): string;
 | 
					 | 
				
			||||||
        computeSecret(other_public_key: string, input_encoding: HexBase64Latin1Encoding, output_encoding: HexBase64Latin1Encoding): string;
 | 
					 | 
				
			||||||
        getPrivateKey(): Buffer;
 | 
					 | 
				
			||||||
        getPrivateKey(encoding: HexBase64Latin1Encoding): string;
 | 
					 | 
				
			||||||
        getPublicKey(): Buffer;
 | 
					 | 
				
			||||||
        getPublicKey(encoding: HexBase64Latin1Encoding, format?: ECDHKeyFormat): string;
 | 
					 | 
				
			||||||
        setPrivateKey(private_key: Binary): void;
 | 
					 | 
				
			||||||
        setPrivateKey(private_key: string, encoding: HexBase64Latin1Encoding): void;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    function createECDH(curve_name: string): ECDH;
 | 
					 | 
				
			||||||
    function timingSafeEqual(a: Binary, b: Binary): boolean;
 | 
					 | 
				
			||||||
    /** @deprecated since v10.0.0 */
 | 
					 | 
				
			||||||
    const DEFAULT_ENCODING: string;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    export type KeyType = 'rsa' | 'dsa' | 'ec';
 | 
					 | 
				
			||||||
    export type KeyFormat = 'pem' | 'der';
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface BasePrivateKeyEncodingOptions<T extends KeyFormat> {
 | 
					 | 
				
			||||||
        format: T;
 | 
					 | 
				
			||||||
        cipher?: string;
 | 
					 | 
				
			||||||
        passphrase?: string;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface KeyPairKeyObjectResult {
 | 
					 | 
				
			||||||
        publicKey: KeyObject;
 | 
					 | 
				
			||||||
        privateKey: KeyObject;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface ECKeyPairKeyObjectOptions {
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Name of the curve to use.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        namedCurve: string;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface RSAKeyPairKeyObjectOptions {
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Key size in bits
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        modulusLength: number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * @default 0x10001
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        publicExponent?: number;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface DSAKeyPairKeyObjectOptions {
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Key size in bits
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        modulusLength: number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Size of q in bits
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        divisorLength: number;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface RSAKeyPairOptions<PubF extends KeyFormat, PrivF extends KeyFormat> {
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Key size in bits
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        modulusLength: number;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * @default 0x10001
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        publicExponent?: number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        publicKeyEncoding: {
 | 
					 | 
				
			||||||
            type: 'pkcs1' | 'spki';
 | 
					 | 
				
			||||||
            format: PubF;
 | 
					 | 
				
			||||||
        };
 | 
					 | 
				
			||||||
        privateKeyEncoding: BasePrivateKeyEncodingOptions<PrivF> & {
 | 
					 | 
				
			||||||
            type: 'pkcs1' | 'pkcs8';
 | 
					 | 
				
			||||||
        };
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface DSAKeyPairOptions<PubF extends KeyFormat, PrivF extends KeyFormat> {
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Key size in bits
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        modulusLength: number;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Size of q in bits
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        divisorLength: number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        publicKeyEncoding: {
 | 
					 | 
				
			||||||
            type: 'spki';
 | 
					 | 
				
			||||||
            format: PubF;
 | 
					 | 
				
			||||||
        };
 | 
					 | 
				
			||||||
        privateKeyEncoding: BasePrivateKeyEncodingOptions<PrivF> & {
 | 
					 | 
				
			||||||
            type: 'pkcs8';
 | 
					 | 
				
			||||||
        };
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface ECKeyPairOptions<PubF extends KeyFormat, PrivF extends KeyFormat> {
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Name of the curve to use.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        namedCurve: string;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        publicKeyEncoding: {
 | 
					 | 
				
			||||||
            type: 'pkcs1' | 'spki';
 | 
					 | 
				
			||||||
            format: PubF;
 | 
					 | 
				
			||||||
        };
 | 
					 | 
				
			||||||
        privateKeyEncoding: BasePrivateKeyEncodingOptions<PrivF> & {
 | 
					 | 
				
			||||||
            type: 'sec1' | 'pkcs8';
 | 
					 | 
				
			||||||
        };
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface KeyPairSyncResult<T1 extends string | Buffer, T2 extends string | Buffer> {
 | 
					 | 
				
			||||||
        publicKey: T1;
 | 
					 | 
				
			||||||
        privateKey: T2;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function generateKeyPairSync(type: 'rsa', options: RSAKeyPairOptions<'pem', 'pem'>): KeyPairSyncResult<string, string>;
 | 
					 | 
				
			||||||
    function generateKeyPairSync(type: 'rsa', options: RSAKeyPairOptions<'pem', 'der'>): KeyPairSyncResult<string, Buffer>;
 | 
					 | 
				
			||||||
    function generateKeyPairSync(type: 'rsa', options: RSAKeyPairOptions<'der', 'pem'>): KeyPairSyncResult<Buffer, string>;
 | 
					 | 
				
			||||||
    function generateKeyPairSync(type: 'rsa', options: RSAKeyPairOptions<'der', 'der'>): KeyPairSyncResult<Buffer, Buffer>;
 | 
					 | 
				
			||||||
    function generateKeyPairSync(type: 'rsa', options: RSAKeyPairKeyObjectOptions): KeyPairKeyObjectResult;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function generateKeyPairSync(type: 'dsa', options: DSAKeyPairOptions<'pem', 'pem'>): KeyPairSyncResult<string, string>;
 | 
					 | 
				
			||||||
    function generateKeyPairSync(type: 'dsa', options: DSAKeyPairOptions<'pem', 'der'>): KeyPairSyncResult<string, Buffer>;
 | 
					 | 
				
			||||||
    function generateKeyPairSync(type: 'dsa', options: DSAKeyPairOptions<'der', 'pem'>): KeyPairSyncResult<Buffer, string>;
 | 
					 | 
				
			||||||
    function generateKeyPairSync(type: 'dsa', options: DSAKeyPairOptions<'der', 'der'>): KeyPairSyncResult<Buffer, Buffer>;
 | 
					 | 
				
			||||||
    function generateKeyPairSync(type: 'dsa', options: DSAKeyPairKeyObjectOptions): KeyPairKeyObjectResult;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function generateKeyPairSync(type: 'ec', options: ECKeyPairOptions<'pem', 'pem'>): KeyPairSyncResult<string, string>;
 | 
					 | 
				
			||||||
    function generateKeyPairSync(type: 'ec', options: ECKeyPairOptions<'pem', 'der'>): KeyPairSyncResult<string, Buffer>;
 | 
					 | 
				
			||||||
    function generateKeyPairSync(type: 'ec', options: ECKeyPairOptions<'der', 'pem'>): KeyPairSyncResult<Buffer, string>;
 | 
					 | 
				
			||||||
    function generateKeyPairSync(type: 'ec', options: ECKeyPairOptions<'der', 'der'>): KeyPairSyncResult<Buffer, Buffer>;
 | 
					 | 
				
			||||||
    function generateKeyPairSync(type: 'ec', options: ECKeyPairKeyObjectOptions): KeyPairKeyObjectResult;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function generateKeyPair(type: 'rsa', options: RSAKeyPairOptions<'pem', 'pem'>, callback: (err: Error | null, publicKey: string, privateKey: string) => void): void;
 | 
					 | 
				
			||||||
    function generateKeyPair(type: 'rsa', options: RSAKeyPairOptions<'pem', 'der'>, callback: (err: Error | null, publicKey: string, privateKey: Buffer) => void): void;
 | 
					 | 
				
			||||||
    function generateKeyPair(type: 'rsa', options: RSAKeyPairOptions<'der', 'pem'>, callback: (err: Error | null, publicKey: Buffer, privateKey: string) => void): void;
 | 
					 | 
				
			||||||
    function generateKeyPair(type: 'rsa', options: RSAKeyPairOptions<'der', 'der'>, callback: (err: Error | null, publicKey: Buffer, privateKey: Buffer) => void): void;
 | 
					 | 
				
			||||||
    function generateKeyPair(type: 'rsa', options: RSAKeyPairKeyObjectOptions, callback: (err: Error | null, publicKey: KeyObject, privateKey: KeyObject) => void): void;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function generateKeyPair(type: 'dsa', options: DSAKeyPairOptions<'pem', 'pem'>, callback: (err: Error | null, publicKey: string, privateKey: string) => void): void;
 | 
					 | 
				
			||||||
    function generateKeyPair(type: 'dsa', options: DSAKeyPairOptions<'pem', 'der'>, callback: (err: Error | null, publicKey: string, privateKey: Buffer) => void): void;
 | 
					 | 
				
			||||||
    function generateKeyPair(type: 'dsa', options: DSAKeyPairOptions<'der', 'pem'>, callback: (err: Error | null, publicKey: Buffer, privateKey: string) => void): void;
 | 
					 | 
				
			||||||
    function generateKeyPair(type: 'dsa', options: DSAKeyPairOptions<'der', 'der'>, callback: (err: Error | null, publicKey: Buffer, privateKey: Buffer) => void): void;
 | 
					 | 
				
			||||||
    function generateKeyPair(type: 'dsa', options: DSAKeyPairKeyObjectOptions, callback: (err: Error | null, publicKey: KeyObject, privateKey: KeyObject) => void): void;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function generateKeyPair(type: 'ec', options: ECKeyPairOptions<'pem', 'pem'>, callback: (err: Error | null, publicKey: string, privateKey: string) => void): void;
 | 
					 | 
				
			||||||
    function generateKeyPair(type: 'ec', options: ECKeyPairOptions<'pem', 'der'>, callback: (err: Error | null, publicKey: string, privateKey: Buffer) => void): void;
 | 
					 | 
				
			||||||
    function generateKeyPair(type: 'ec', options: ECKeyPairOptions<'der', 'pem'>, callback: (err: Error | null, publicKey: Buffer, privateKey: string) => void): void;
 | 
					 | 
				
			||||||
    function generateKeyPair(type: 'ec', options: ECKeyPairOptions<'der', 'der'>, callback: (err: Error | null, publicKey: Buffer, privateKey: Buffer) => void): void;
 | 
					 | 
				
			||||||
    function generateKeyPair(type: 'ec', options: ECKeyPairKeyObjectOptions, callback: (err: Error | null, publicKey: KeyObject, privateKey: KeyObject) => void): void;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    namespace generateKeyPair {
 | 
					 | 
				
			||||||
        function __promisify__(type: "rsa", options: RSAKeyPairOptions<'pem', 'pem'>): Promise<{ publicKey: string, privateKey: string }>;
 | 
					 | 
				
			||||||
        function __promisify__(type: "rsa", options: RSAKeyPairOptions<'pem', 'der'>): Promise<{ publicKey: string, privateKey: Buffer }>;
 | 
					 | 
				
			||||||
        function __promisify__(type: "rsa", options: RSAKeyPairOptions<'der', 'pem'>): Promise<{ publicKey: Buffer, privateKey: string }>;
 | 
					 | 
				
			||||||
        function __promisify__(type: "rsa", options: RSAKeyPairOptions<'der', 'der'>): Promise<{ publicKey: Buffer, privateKey: Buffer }>;
 | 
					 | 
				
			||||||
        function __promisify__(type: "rsa", options: RSAKeyPairKeyObjectOptions): Promise<KeyPairKeyObjectResult>;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        function __promisify__(type: "dsa", options: DSAKeyPairOptions<'pem', 'pem'>): Promise<{ publicKey: string, privateKey: string }>;
 | 
					 | 
				
			||||||
        function __promisify__(type: "dsa", options: DSAKeyPairOptions<'pem', 'der'>): Promise<{ publicKey: string, privateKey: Buffer }>;
 | 
					 | 
				
			||||||
        function __promisify__(type: "dsa", options: DSAKeyPairOptions<'der', 'pem'>): Promise<{ publicKey: Buffer, privateKey: string }>;
 | 
					 | 
				
			||||||
        function __promisify__(type: "dsa", options: DSAKeyPairOptions<'der', 'der'>): Promise<{ publicKey: Buffer, privateKey: Buffer }>;
 | 
					 | 
				
			||||||
        function __promisify__(type: "dsa", options: DSAKeyPairKeyObjectOptions): Promise<KeyPairKeyObjectResult>;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        function __promisify__(type: "ec", options: ECKeyPairOptions<'pem', 'pem'>): Promise<{ publicKey: string, privateKey: string }>;
 | 
					 | 
				
			||||||
        function __promisify__(type: "ec", options: ECKeyPairOptions<'pem', 'der'>): Promise<{ publicKey: string, privateKey: Buffer }>;
 | 
					 | 
				
			||||||
        function __promisify__(type: "ec", options: ECKeyPairOptions<'der', 'pem'>): Promise<{ publicKey: Buffer, privateKey: string }>;
 | 
					 | 
				
			||||||
        function __promisify__(type: "ec", options: ECKeyPairOptions<'der', 'der'>): Promise<{ publicKey: Buffer, privateKey: Buffer }>;
 | 
					 | 
				
			||||||
        function __promisify__(type: "ec", options: ECKeyPairKeyObjectOptions): Promise<KeyPairKeyObjectResult>;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * Calculates and returns the signature for `data` using the given private key and
 | 
					 | 
				
			||||||
     * algorithm. If `algorithm` is `null` or `undefined`, then the algorithm is
 | 
					 | 
				
			||||||
     * dependent upon the key type (especially Ed25519 and Ed448).
 | 
					 | 
				
			||||||
     *
 | 
					 | 
				
			||||||
     * If `key` is not a [`KeyObject`][], this function behaves as if `key` had been
 | 
					 | 
				
			||||||
     * passed to [`crypto.createPrivateKey()`][].
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    function sign(algorithm: string | null | undefined, data: Binary, key: KeyLike | SignPrivateKeyInput): Buffer;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface VerifyKeyWithOptions extends KeyObject, SigningOptions {
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * Calculates and returns the signature for `data` using the given private key and
 | 
					 | 
				
			||||||
     * algorithm. If `algorithm` is `null` or `undefined`, then the algorithm is
 | 
					 | 
				
			||||||
     * dependent upon the key type (especially Ed25519 and Ed448).
 | 
					 | 
				
			||||||
     *
 | 
					 | 
				
			||||||
     * If `key` is not a [`KeyObject`][], this function behaves as if `key` had been
 | 
					 | 
				
			||||||
     * passed to [`crypto.createPublicKey()`][].
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    function verify(algorithm: string | null | undefined, data: Binary, key: KeyLike | VerifyKeyWithOptions, signature: Binary): Buffer;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										102
									
								
								node_modules/@types/node/dgram.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										102
									
								
								node_modules/@types/node/dgram.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,102 +0,0 @@
 | 
				
			|||||||
declare module "dgram" {
 | 
					 | 
				
			||||||
    import { AddressInfo } from "net";
 | 
					 | 
				
			||||||
    import * as dns from "dns";
 | 
					 | 
				
			||||||
    import * as events from "events";
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface RemoteInfo {
 | 
					 | 
				
			||||||
        address: string;
 | 
					 | 
				
			||||||
        family: 'IPv4' | 'IPv6';
 | 
					 | 
				
			||||||
        port: number;
 | 
					 | 
				
			||||||
        size: number;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface BindOptions {
 | 
					 | 
				
			||||||
        port: number;
 | 
					 | 
				
			||||||
        address?: string;
 | 
					 | 
				
			||||||
        exclusive?: boolean;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    type SocketType = "udp4" | "udp6";
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface SocketOptions {
 | 
					 | 
				
			||||||
        type: SocketType;
 | 
					 | 
				
			||||||
        reuseAddr?: boolean;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * @default false
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        ipv6Only?: boolean;
 | 
					 | 
				
			||||||
        recvBufferSize?: number;
 | 
					 | 
				
			||||||
        sendBufferSize?: number;
 | 
					 | 
				
			||||||
        lookup?: (hostname: string, options: dns.LookupOneOptions, callback: (err: NodeJS.ErrnoException | null, address: string, family: number) => void) => void;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function createSocket(type: SocketType, callback?: (msg: Buffer, rinfo: RemoteInfo) => void): Socket;
 | 
					 | 
				
			||||||
    function createSocket(options: SocketOptions, callback?: (msg: Buffer, rinfo: RemoteInfo) => void): Socket;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    class Socket extends events.EventEmitter {
 | 
					 | 
				
			||||||
        send(msg: Buffer | string | Uint8Array | any[], port: number, address?: string, callback?: (error: Error | null, bytes: number) => void): void;
 | 
					 | 
				
			||||||
        send(msg: Buffer | string | Uint8Array, offset: number, length: number, port: number, address?: string, callback?: (error: Error | null, bytes: number) => void): void;
 | 
					 | 
				
			||||||
        bind(port?: number, address?: string, callback?: () => void): void;
 | 
					 | 
				
			||||||
        bind(port?: number, callback?: () => void): void;
 | 
					 | 
				
			||||||
        bind(callback?: () => void): void;
 | 
					 | 
				
			||||||
        bind(options: BindOptions, callback?: () => void): void;
 | 
					 | 
				
			||||||
        close(callback?: () => void): void;
 | 
					 | 
				
			||||||
        address(): AddressInfo | string;
 | 
					 | 
				
			||||||
        setBroadcast(flag: boolean): void;
 | 
					 | 
				
			||||||
        setTTL(ttl: number): void;
 | 
					 | 
				
			||||||
        setMulticastTTL(ttl: number): void;
 | 
					 | 
				
			||||||
        setMulticastInterface(multicastInterface: string): void;
 | 
					 | 
				
			||||||
        setMulticastLoopback(flag: boolean): void;
 | 
					 | 
				
			||||||
        addMembership(multicastAddress: string, multicastInterface?: string): void;
 | 
					 | 
				
			||||||
        dropMembership(multicastAddress: string, multicastInterface?: string): void;
 | 
					 | 
				
			||||||
        ref(): this;
 | 
					 | 
				
			||||||
        unref(): this;
 | 
					 | 
				
			||||||
        setRecvBufferSize(size: number): void;
 | 
					 | 
				
			||||||
        setSendBufferSize(size: number): void;
 | 
					 | 
				
			||||||
        getRecvBufferSize(): number;
 | 
					 | 
				
			||||||
        getSendBufferSize(): number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * events.EventEmitter
 | 
					 | 
				
			||||||
         * 1. close
 | 
					 | 
				
			||||||
         * 2. error
 | 
					 | 
				
			||||||
         * 3. listening
 | 
					 | 
				
			||||||
         * 4. message
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        addListener(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "listening", listener: () => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "message", listener: (msg: Buffer, rinfo: RemoteInfo) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        emit(event: string | symbol, ...args: any[]): boolean;
 | 
					 | 
				
			||||||
        emit(event: "close"): boolean;
 | 
					 | 
				
			||||||
        emit(event: "error", err: Error): boolean;
 | 
					 | 
				
			||||||
        emit(event: "listening"): boolean;
 | 
					 | 
				
			||||||
        emit(event: "message", msg: Buffer, rinfo: RemoteInfo): boolean;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        on(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        on(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
        on(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        on(event: "listening", listener: () => void): this;
 | 
					 | 
				
			||||||
        on(event: "message", listener: (msg: Buffer, rinfo: RemoteInfo) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        once(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        once(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
        once(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        once(event: "listening", listener: () => void): this;
 | 
					 | 
				
			||||||
        once(event: "message", listener: (msg: Buffer, rinfo: RemoteInfo) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        prependListener(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "listening", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "message", listener: (msg: Buffer, rinfo: RemoteInfo) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        prependOnceListener(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "listening", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "message", listener: (msg: Buffer, rinfo: RemoteInfo) => void): this;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										292
									
								
								node_modules/@types/node/dns.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										292
									
								
								node_modules/@types/node/dns.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,292 +0,0 @@
 | 
				
			|||||||
declare module "dns" {
 | 
					 | 
				
			||||||
    // Supported getaddrinfo flags.
 | 
					 | 
				
			||||||
    const ADDRCONFIG: number;
 | 
					 | 
				
			||||||
    const V4MAPPED: number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface LookupOptions {
 | 
					 | 
				
			||||||
        family?: number;
 | 
					 | 
				
			||||||
        hints?: number;
 | 
					 | 
				
			||||||
        all?: boolean;
 | 
					 | 
				
			||||||
        verbatim?: boolean;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface LookupOneOptions extends LookupOptions {
 | 
					 | 
				
			||||||
        all?: false;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface LookupAllOptions extends LookupOptions {
 | 
					 | 
				
			||||||
        all: true;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface LookupAddress {
 | 
					 | 
				
			||||||
        address: string;
 | 
					 | 
				
			||||||
        family: number;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function lookup(hostname: string, family: number, callback: (err: NodeJS.ErrnoException | null, address: string, family: number) => void): void;
 | 
					 | 
				
			||||||
    function lookup(hostname: string, options: LookupOneOptions, callback: (err: NodeJS.ErrnoException | null, address: string, family: number) => void): void;
 | 
					 | 
				
			||||||
    function lookup(hostname: string, options: LookupAllOptions, callback: (err: NodeJS.ErrnoException | null, addresses: LookupAddress[]) => void): void;
 | 
					 | 
				
			||||||
    function lookup(hostname: string, options: LookupOptions, callback: (err: NodeJS.ErrnoException | null, address: string | LookupAddress[], family: number) => void): void;
 | 
					 | 
				
			||||||
    function lookup(hostname: string, callback: (err: NodeJS.ErrnoException | null, address: string, family: number) => void): void;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    // NOTE: This namespace provides design-time support for util.promisify. Exported members do not exist at runtime.
 | 
					 | 
				
			||||||
    namespace lookup {
 | 
					 | 
				
			||||||
        function __promisify__(hostname: string, options: LookupAllOptions): Promise<{ address: LookupAddress[] }>;
 | 
					 | 
				
			||||||
        function __promisify__(hostname: string, options?: LookupOneOptions | number): Promise<{ address: string, family: number }>;
 | 
					 | 
				
			||||||
        function __promisify__(hostname: string, options?: LookupOptions | number): Promise<{ address: string | LookupAddress[], family?: number }>;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function lookupService(address: string, port: number, callback: (err: NodeJS.ErrnoException | null, hostname: string, service: string) => void): void;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    namespace lookupService {
 | 
					 | 
				
			||||||
        function __promisify__(address: string, port: number): Promise<{ hostname: string, service: string }>;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface ResolveOptions {
 | 
					 | 
				
			||||||
        ttl: boolean;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface ResolveWithTtlOptions extends ResolveOptions {
 | 
					 | 
				
			||||||
        ttl: true;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface RecordWithTtl {
 | 
					 | 
				
			||||||
        address: string;
 | 
					 | 
				
			||||||
        ttl: number;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    /** @deprecated Use AnyARecord or AnyAaaaRecord instead. */
 | 
					 | 
				
			||||||
    type AnyRecordWithTtl = AnyARecord | AnyAaaaRecord;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface AnyARecord extends RecordWithTtl {
 | 
					 | 
				
			||||||
        type: "A";
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface AnyAaaaRecord extends RecordWithTtl {
 | 
					 | 
				
			||||||
        type: "AAAA";
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface MxRecord {
 | 
					 | 
				
			||||||
        priority: number;
 | 
					 | 
				
			||||||
        exchange: string;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface AnyMxRecord extends MxRecord {
 | 
					 | 
				
			||||||
        type: "MX";
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface NaptrRecord {
 | 
					 | 
				
			||||||
        flags: string;
 | 
					 | 
				
			||||||
        service: string;
 | 
					 | 
				
			||||||
        regexp: string;
 | 
					 | 
				
			||||||
        replacement: string;
 | 
					 | 
				
			||||||
        order: number;
 | 
					 | 
				
			||||||
        preference: number;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface AnyNaptrRecord extends NaptrRecord {
 | 
					 | 
				
			||||||
        type: "NAPTR";
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface SoaRecord {
 | 
					 | 
				
			||||||
        nsname: string;
 | 
					 | 
				
			||||||
        hostmaster: string;
 | 
					 | 
				
			||||||
        serial: number;
 | 
					 | 
				
			||||||
        refresh: number;
 | 
					 | 
				
			||||||
        retry: number;
 | 
					 | 
				
			||||||
        expire: number;
 | 
					 | 
				
			||||||
        minttl: number;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface AnySoaRecord extends SoaRecord {
 | 
					 | 
				
			||||||
        type: "SOA";
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface SrvRecord {
 | 
					 | 
				
			||||||
        priority: number;
 | 
					 | 
				
			||||||
        weight: number;
 | 
					 | 
				
			||||||
        port: number;
 | 
					 | 
				
			||||||
        name: string;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface AnySrvRecord extends SrvRecord {
 | 
					 | 
				
			||||||
        type: "SRV";
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface AnyTxtRecord {
 | 
					 | 
				
			||||||
        type: "TXT";
 | 
					 | 
				
			||||||
        entries: string[];
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface AnyNsRecord {
 | 
					 | 
				
			||||||
        type: "NS";
 | 
					 | 
				
			||||||
        value: string;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface AnyPtrRecord {
 | 
					 | 
				
			||||||
        type: "PTR";
 | 
					 | 
				
			||||||
        value: string;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface AnyCnameRecord {
 | 
					 | 
				
			||||||
        type: "CNAME";
 | 
					 | 
				
			||||||
        value: string;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    type AnyRecord = AnyARecord |
 | 
					 | 
				
			||||||
        AnyAaaaRecord |
 | 
					 | 
				
			||||||
        AnyCnameRecord |
 | 
					 | 
				
			||||||
        AnyMxRecord |
 | 
					 | 
				
			||||||
        AnyNaptrRecord |
 | 
					 | 
				
			||||||
        AnyNsRecord |
 | 
					 | 
				
			||||||
        AnyPtrRecord |
 | 
					 | 
				
			||||||
        AnySoaRecord |
 | 
					 | 
				
			||||||
        AnySrvRecord |
 | 
					 | 
				
			||||||
        AnyTxtRecord;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function resolve(hostname: string, callback: (err: NodeJS.ErrnoException | null, addresses: string[]) => void): void;
 | 
					 | 
				
			||||||
    function resolve(hostname: string, rrtype: "A", callback: (err: NodeJS.ErrnoException | null, addresses: string[]) => void): void;
 | 
					 | 
				
			||||||
    function resolve(hostname: string, rrtype: "AAAA", callback: (err: NodeJS.ErrnoException | null, addresses: string[]) => void): void;
 | 
					 | 
				
			||||||
    function resolve(hostname: string, rrtype: "ANY", callback: (err: NodeJS.ErrnoException | null, addresses: AnyRecord[]) => void): void;
 | 
					 | 
				
			||||||
    function resolve(hostname: string, rrtype: "CNAME", callback: (err: NodeJS.ErrnoException | null, addresses: string[]) => void): void;
 | 
					 | 
				
			||||||
    function resolve(hostname: string, rrtype: "MX", callback: (err: NodeJS.ErrnoException | null, addresses: MxRecord[]) => void): void;
 | 
					 | 
				
			||||||
    function resolve(hostname: string, rrtype: "NAPTR", callback: (err: NodeJS.ErrnoException | null, addresses: NaptrRecord[]) => void): void;
 | 
					 | 
				
			||||||
    function resolve(hostname: string, rrtype: "NS", callback: (err: NodeJS.ErrnoException | null, addresses: string[]) => void): void;
 | 
					 | 
				
			||||||
    function resolve(hostname: string, rrtype: "PTR", callback: (err: NodeJS.ErrnoException | null, addresses: string[]) => void): void;
 | 
					 | 
				
			||||||
    function resolve(hostname: string, rrtype: "SOA", callback: (err: NodeJS.ErrnoException | null, addresses: SoaRecord) => void): void;
 | 
					 | 
				
			||||||
    function resolve(hostname: string, rrtype: "SRV", callback: (err: NodeJS.ErrnoException | null, addresses: SrvRecord[]) => void): void;
 | 
					 | 
				
			||||||
    function resolve(hostname: string, rrtype: "TXT", callback: (err: NodeJS.ErrnoException | null, addresses: string[][]) => void): void;
 | 
					 | 
				
			||||||
    function resolve(
 | 
					 | 
				
			||||||
        hostname: string,
 | 
					 | 
				
			||||||
        rrtype: string,
 | 
					 | 
				
			||||||
        callback: (err: NodeJS.ErrnoException | null, addresses: string[] | MxRecord[] | NaptrRecord[] | SoaRecord | SrvRecord[] | string[][] | AnyRecord[]) => void,
 | 
					 | 
				
			||||||
    ): void;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    // NOTE: This namespace provides design-time support for util.promisify. Exported members do not exist at runtime.
 | 
					 | 
				
			||||||
    namespace resolve {
 | 
					 | 
				
			||||||
        function __promisify__(hostname: string, rrtype?: "A" | "AAAA" | "CNAME" | "NS" | "PTR"): Promise<string[]>;
 | 
					 | 
				
			||||||
        function __promisify__(hostname: string, rrtype: "ANY"): Promise<AnyRecord[]>;
 | 
					 | 
				
			||||||
        function __promisify__(hostname: string, rrtype: "MX"): Promise<MxRecord[]>;
 | 
					 | 
				
			||||||
        function __promisify__(hostname: string, rrtype: "NAPTR"): Promise<NaptrRecord[]>;
 | 
					 | 
				
			||||||
        function __promisify__(hostname: string, rrtype: "SOA"): Promise<SoaRecord>;
 | 
					 | 
				
			||||||
        function __promisify__(hostname: string, rrtype: "SRV"): Promise<SrvRecord[]>;
 | 
					 | 
				
			||||||
        function __promisify__(hostname: string, rrtype: "TXT"): Promise<string[][]>;
 | 
					 | 
				
			||||||
        function __promisify__(hostname: string, rrtype: string): Promise<string[] | MxRecord[] | NaptrRecord[] | SoaRecord | SrvRecord[] | string[][] | AnyRecord[]>;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function resolve4(hostname: string, callback: (err: NodeJS.ErrnoException | null, addresses: string[]) => void): void;
 | 
					 | 
				
			||||||
    function resolve4(hostname: string, options: ResolveWithTtlOptions, callback: (err: NodeJS.ErrnoException | null, addresses: RecordWithTtl[]) => void): void;
 | 
					 | 
				
			||||||
    function resolve4(hostname: string, options: ResolveOptions, callback: (err: NodeJS.ErrnoException | null, addresses: string[] | RecordWithTtl[]) => void): void;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    // NOTE: This namespace provides design-time support for util.promisify. Exported members do not exist at runtime.
 | 
					 | 
				
			||||||
    namespace resolve4 {
 | 
					 | 
				
			||||||
        function __promisify__(hostname: string): Promise<string[]>;
 | 
					 | 
				
			||||||
        function __promisify__(hostname: string, options: ResolveWithTtlOptions): Promise<RecordWithTtl[]>;
 | 
					 | 
				
			||||||
        function __promisify__(hostname: string, options?: ResolveOptions): Promise<string[] | RecordWithTtl[]>;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function resolve6(hostname: string, callback: (err: NodeJS.ErrnoException | null, addresses: string[]) => void): void;
 | 
					 | 
				
			||||||
    function resolve6(hostname: string, options: ResolveWithTtlOptions, callback: (err: NodeJS.ErrnoException | null, addresses: RecordWithTtl[]) => void): void;
 | 
					 | 
				
			||||||
    function resolve6(hostname: string, options: ResolveOptions, callback: (err: NodeJS.ErrnoException | null, addresses: string[] | RecordWithTtl[]) => void): void;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    // NOTE: This namespace provides design-time support for util.promisify. Exported members do not exist at runtime.
 | 
					 | 
				
			||||||
    namespace resolve6 {
 | 
					 | 
				
			||||||
        function __promisify__(hostname: string): Promise<string[]>;
 | 
					 | 
				
			||||||
        function __promisify__(hostname: string, options: ResolveWithTtlOptions): Promise<RecordWithTtl[]>;
 | 
					 | 
				
			||||||
        function __promisify__(hostname: string, options?: ResolveOptions): Promise<string[] | RecordWithTtl[]>;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function resolveCname(hostname: string, callback: (err: NodeJS.ErrnoException | null, addresses: string[]) => void): void;
 | 
					 | 
				
			||||||
    namespace resolveCname {
 | 
					 | 
				
			||||||
        function __promisify__(hostname: string): Promise<string[]>;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function resolveMx(hostname: string, callback: (err: NodeJS.ErrnoException | null, addresses: MxRecord[]) => void): void;
 | 
					 | 
				
			||||||
    namespace resolveMx {
 | 
					 | 
				
			||||||
        function __promisify__(hostname: string): Promise<MxRecord[]>;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function resolveNaptr(hostname: string, callback: (err: NodeJS.ErrnoException | null, addresses: NaptrRecord[]) => void): void;
 | 
					 | 
				
			||||||
    namespace resolveNaptr {
 | 
					 | 
				
			||||||
        function __promisify__(hostname: string): Promise<NaptrRecord[]>;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function resolveNs(hostname: string, callback: (err: NodeJS.ErrnoException | null, addresses: string[]) => void): void;
 | 
					 | 
				
			||||||
    namespace resolveNs {
 | 
					 | 
				
			||||||
        function __promisify__(hostname: string): Promise<string[]>;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function resolvePtr(hostname: string, callback: (err: NodeJS.ErrnoException | null, addresses: string[]) => void): void;
 | 
					 | 
				
			||||||
    namespace resolvePtr {
 | 
					 | 
				
			||||||
        function __promisify__(hostname: string): Promise<string[]>;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function resolveSoa(hostname: string, callback: (err: NodeJS.ErrnoException | null, address: SoaRecord) => void): void;
 | 
					 | 
				
			||||||
    namespace resolveSoa {
 | 
					 | 
				
			||||||
        function __promisify__(hostname: string): Promise<SoaRecord>;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function resolveSrv(hostname: string, callback: (err: NodeJS.ErrnoException | null, addresses: SrvRecord[]) => void): void;
 | 
					 | 
				
			||||||
    namespace resolveSrv {
 | 
					 | 
				
			||||||
        function __promisify__(hostname: string): Promise<SrvRecord[]>;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function resolveTxt(hostname: string, callback: (err: NodeJS.ErrnoException | null, addresses: string[][]) => void): void;
 | 
					 | 
				
			||||||
    namespace resolveTxt {
 | 
					 | 
				
			||||||
        function __promisify__(hostname: string): Promise<string[][]>;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function resolveAny(hostname: string, callback: (err: NodeJS.ErrnoException | null, addresses: AnyRecord[]) => void): void;
 | 
					 | 
				
			||||||
    namespace resolveAny {
 | 
					 | 
				
			||||||
        function __promisify__(hostname: string): Promise<AnyRecord[]>;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function reverse(ip: string, callback: (err: NodeJS.ErrnoException | null, hostnames: string[]) => void): void;
 | 
					 | 
				
			||||||
    function setServers(servers: string[]): void;
 | 
					 | 
				
			||||||
    function getServers(): string[];
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    // Error codes
 | 
					 | 
				
			||||||
    const NODATA: string;
 | 
					 | 
				
			||||||
    const FORMERR: string;
 | 
					 | 
				
			||||||
    const SERVFAIL: string;
 | 
					 | 
				
			||||||
    const NOTFOUND: string;
 | 
					 | 
				
			||||||
    const NOTIMP: string;
 | 
					 | 
				
			||||||
    const REFUSED: string;
 | 
					 | 
				
			||||||
    const BADQUERY: string;
 | 
					 | 
				
			||||||
    const BADNAME: string;
 | 
					 | 
				
			||||||
    const BADFAMILY: string;
 | 
					 | 
				
			||||||
    const BADRESP: string;
 | 
					 | 
				
			||||||
    const CONNREFUSED: string;
 | 
					 | 
				
			||||||
    const TIMEOUT: string;
 | 
					 | 
				
			||||||
    const EOF: string;
 | 
					 | 
				
			||||||
    const FILE: string;
 | 
					 | 
				
			||||||
    const NOMEM: string;
 | 
					 | 
				
			||||||
    const DESTRUCTION: string;
 | 
					 | 
				
			||||||
    const BADSTR: string;
 | 
					 | 
				
			||||||
    const BADFLAGS: string;
 | 
					 | 
				
			||||||
    const NONAME: string;
 | 
					 | 
				
			||||||
    const BADHINTS: string;
 | 
					 | 
				
			||||||
    const NOTINITIALIZED: string;
 | 
					 | 
				
			||||||
    const LOADIPHLPAPI: string;
 | 
					 | 
				
			||||||
    const ADDRGETNETWORKPARAMS: string;
 | 
					 | 
				
			||||||
    const CANCELLED: string;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    class Resolver {
 | 
					 | 
				
			||||||
        getServers: typeof getServers;
 | 
					 | 
				
			||||||
        setServers: typeof setServers;
 | 
					 | 
				
			||||||
        resolve: typeof resolve;
 | 
					 | 
				
			||||||
        resolve4: typeof resolve4;
 | 
					 | 
				
			||||||
        resolve6: typeof resolve6;
 | 
					 | 
				
			||||||
        resolveAny: typeof resolveAny;
 | 
					 | 
				
			||||||
        resolveCname: typeof resolveCname;
 | 
					 | 
				
			||||||
        resolveMx: typeof resolveMx;
 | 
					 | 
				
			||||||
        resolveNaptr: typeof resolveNaptr;
 | 
					 | 
				
			||||||
        resolveNs: typeof resolveNs;
 | 
					 | 
				
			||||||
        resolvePtr: typeof resolvePtr;
 | 
					 | 
				
			||||||
        resolveSoa: typeof resolveSoa;
 | 
					 | 
				
			||||||
        resolveSrv: typeof resolveSrv;
 | 
					 | 
				
			||||||
        resolveTxt: typeof resolveTxt;
 | 
					 | 
				
			||||||
        reverse: typeof reverse;
 | 
					 | 
				
			||||||
        cancel(): void;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										16
									
								
								node_modules/@types/node/domain.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										16
									
								
								node_modules/@types/node/domain.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,16 +0,0 @@
 | 
				
			|||||||
declare module "domain" {
 | 
					 | 
				
			||||||
    import * as events from "events";
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    class Domain extends events.EventEmitter implements NodeJS.Domain {
 | 
					 | 
				
			||||||
        run<T>(fn: (...args: any[]) => T, ...args: any[]): T;
 | 
					 | 
				
			||||||
        add(emitter: events.EventEmitter | NodeJS.Timer): void;
 | 
					 | 
				
			||||||
        remove(emitter: events.EventEmitter | NodeJS.Timer): void;
 | 
					 | 
				
			||||||
        bind<T extends Function>(cb: T): T;
 | 
					 | 
				
			||||||
        intercept<T extends Function>(cb: T): T;
 | 
					 | 
				
			||||||
        members: Array<events.EventEmitter | NodeJS.Timer>;
 | 
					 | 
				
			||||||
        enter(): void;
 | 
					 | 
				
			||||||
        exit(): void;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function create(): Domain;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										30
									
								
								node_modules/@types/node/events.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										30
									
								
								node_modules/@types/node/events.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,30 +0,0 @@
 | 
				
			|||||||
declare module "events" {
 | 
					 | 
				
			||||||
    class internal extends NodeJS.EventEmitter { }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    namespace internal {
 | 
					 | 
				
			||||||
        function once(emitter: EventEmitter, event: string | symbol): Promise<any[]>;
 | 
					 | 
				
			||||||
         class EventEmitter extends internal {
 | 
					 | 
				
			||||||
            /** @deprecated since v4.0.0 */
 | 
					 | 
				
			||||||
            static listenerCount(emitter: EventEmitter, event: string | symbol): number;
 | 
					 | 
				
			||||||
            static defaultMaxListeners: number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
            addListener(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
            on(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
            once(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
            prependListener(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
            prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
            removeListener(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
            off(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
            removeAllListeners(event?: string | symbol): this;
 | 
					 | 
				
			||||||
            setMaxListeners(n: number): this;
 | 
					 | 
				
			||||||
            getMaxListeners(): number;
 | 
					 | 
				
			||||||
            listeners(event: string | symbol): Function[];
 | 
					 | 
				
			||||||
            rawListeners(event: string | symbol): Function[];
 | 
					 | 
				
			||||||
            emit(event: string | symbol, ...args: any[]): boolean;
 | 
					 | 
				
			||||||
            eventNames(): Array<string | symbol>;
 | 
					 | 
				
			||||||
            listenerCount(type: string | symbol): number;
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    export = internal;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										2296
									
								
								node_modules/@types/node/fs.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										2296
									
								
								node_modules/@types/node/fs.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										1138
									
								
								node_modules/@types/node/globals.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										1138
									
								
								node_modules/@types/node/globals.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										279
									
								
								node_modules/@types/node/http.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										279
									
								
								node_modules/@types/node/http.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,279 +0,0 @@
 | 
				
			|||||||
declare module "http" {
 | 
					 | 
				
			||||||
    import * as events from "events";
 | 
					 | 
				
			||||||
    import * as stream from "stream";
 | 
					 | 
				
			||||||
    import { URL } from "url";
 | 
					 | 
				
			||||||
    import { Socket, Server as NetServer } from "net";
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    // incoming headers will never contain number
 | 
					 | 
				
			||||||
    interface IncomingHttpHeaders {
 | 
					 | 
				
			||||||
        'accept'?: string;
 | 
					 | 
				
			||||||
        'accept-language'?: string;
 | 
					 | 
				
			||||||
        'accept-patch'?: string;
 | 
					 | 
				
			||||||
        'accept-ranges'?: string;
 | 
					 | 
				
			||||||
        'access-control-allow-credentials'?: string;
 | 
					 | 
				
			||||||
        'access-control-allow-headers'?: string;
 | 
					 | 
				
			||||||
        'access-control-allow-methods'?: string;
 | 
					 | 
				
			||||||
        'access-control-allow-origin'?: string;
 | 
					 | 
				
			||||||
        'access-control-expose-headers'?: string;
 | 
					 | 
				
			||||||
        'access-control-max-age'?: string;
 | 
					 | 
				
			||||||
        'age'?: string;
 | 
					 | 
				
			||||||
        'allow'?: string;
 | 
					 | 
				
			||||||
        'alt-svc'?: string;
 | 
					 | 
				
			||||||
        'authorization'?: string;
 | 
					 | 
				
			||||||
        'cache-control'?: string;
 | 
					 | 
				
			||||||
        'connection'?: string;
 | 
					 | 
				
			||||||
        'content-disposition'?: string;
 | 
					 | 
				
			||||||
        'content-encoding'?: string;
 | 
					 | 
				
			||||||
        'content-language'?: string;
 | 
					 | 
				
			||||||
        'content-length'?: string;
 | 
					 | 
				
			||||||
        'content-location'?: string;
 | 
					 | 
				
			||||||
        'content-range'?: string;
 | 
					 | 
				
			||||||
        'content-type'?: string;
 | 
					 | 
				
			||||||
        'cookie'?: string;
 | 
					 | 
				
			||||||
        'date'?: string;
 | 
					 | 
				
			||||||
        'expect'?: string;
 | 
					 | 
				
			||||||
        'expires'?: string;
 | 
					 | 
				
			||||||
        'forwarded'?: string;
 | 
					 | 
				
			||||||
        'from'?: string;
 | 
					 | 
				
			||||||
        'host'?: string;
 | 
					 | 
				
			||||||
        'if-match'?: string;
 | 
					 | 
				
			||||||
        'if-modified-since'?: string;
 | 
					 | 
				
			||||||
        'if-none-match'?: string;
 | 
					 | 
				
			||||||
        'if-unmodified-since'?: string;
 | 
					 | 
				
			||||||
        'last-modified'?: string;
 | 
					 | 
				
			||||||
        'location'?: string;
 | 
					 | 
				
			||||||
        'pragma'?: string;
 | 
					 | 
				
			||||||
        'proxy-authenticate'?: string;
 | 
					 | 
				
			||||||
        'proxy-authorization'?: string;
 | 
					 | 
				
			||||||
        'public-key-pins'?: string;
 | 
					 | 
				
			||||||
        'range'?: string;
 | 
					 | 
				
			||||||
        'referer'?: string;
 | 
					 | 
				
			||||||
        'retry-after'?: string;
 | 
					 | 
				
			||||||
        'set-cookie'?: string[];
 | 
					 | 
				
			||||||
        'strict-transport-security'?: string;
 | 
					 | 
				
			||||||
        'tk'?: string;
 | 
					 | 
				
			||||||
        'trailer'?: string;
 | 
					 | 
				
			||||||
        'transfer-encoding'?: string;
 | 
					 | 
				
			||||||
        'upgrade'?: string;
 | 
					 | 
				
			||||||
        'user-agent'?: string;
 | 
					 | 
				
			||||||
        'vary'?: string;
 | 
					 | 
				
			||||||
        'via'?: string;
 | 
					 | 
				
			||||||
        'warning'?: string;
 | 
					 | 
				
			||||||
        'www-authenticate'?: string;
 | 
					 | 
				
			||||||
        [header: string]: string | string[] | undefined;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    // outgoing headers allows numbers (as they are converted internally to strings)
 | 
					 | 
				
			||||||
    interface OutgoingHttpHeaders {
 | 
					 | 
				
			||||||
        [header: string]: number | string | string[] | undefined;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface ClientRequestArgs {
 | 
					 | 
				
			||||||
        protocol?: string;
 | 
					 | 
				
			||||||
        host?: string;
 | 
					 | 
				
			||||||
        hostname?: string;
 | 
					 | 
				
			||||||
        family?: number;
 | 
					 | 
				
			||||||
        port?: number | string;
 | 
					 | 
				
			||||||
        defaultPort?: number | string;
 | 
					 | 
				
			||||||
        localAddress?: string;
 | 
					 | 
				
			||||||
        socketPath?: string;
 | 
					 | 
				
			||||||
        method?: string;
 | 
					 | 
				
			||||||
        path?: string;
 | 
					 | 
				
			||||||
        headers?: OutgoingHttpHeaders;
 | 
					 | 
				
			||||||
        auth?: string;
 | 
					 | 
				
			||||||
        agent?: Agent | boolean;
 | 
					 | 
				
			||||||
        _defaultAgent?: Agent;
 | 
					 | 
				
			||||||
        timeout?: number;
 | 
					 | 
				
			||||||
        setHost?: boolean;
 | 
					 | 
				
			||||||
        // https://github.com/nodejs/node/blob/master/lib/_http_client.js#L278
 | 
					 | 
				
			||||||
        createConnection?: (options: ClientRequestArgs, oncreate: (err: Error, socket: Socket) => void) => Socket;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface ServerOptions {
 | 
					 | 
				
			||||||
        IncomingMessage?: typeof IncomingMessage;
 | 
					 | 
				
			||||||
        ServerResponse?: typeof ServerResponse;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    type RequestListener = (req: IncomingMessage, res: ServerResponse) => void;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    class Server extends NetServer {
 | 
					 | 
				
			||||||
        constructor(requestListener?: RequestListener);
 | 
					 | 
				
			||||||
        constructor(options: ServerOptions, requestListener?: RequestListener);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        setTimeout(msecs?: number, callback?: () => void): this;
 | 
					 | 
				
			||||||
        setTimeout(callback: () => void): this;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Limits maximum incoming headers count. If set to 0, no limit will be applied.
 | 
					 | 
				
			||||||
         * @default 2000
 | 
					 | 
				
			||||||
         * {@link https://nodejs.org/api/http.html#http_server_maxheaderscount}
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        maxHeadersCount: number | null;
 | 
					 | 
				
			||||||
        timeout: number;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Limit the amount of time the parser will wait to receive the complete HTTP headers.
 | 
					 | 
				
			||||||
         * @default 40000
 | 
					 | 
				
			||||||
         * {@link https://nodejs.org/api/http.html#http_server_headerstimeout}
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        headersTimeout: number;
 | 
					 | 
				
			||||||
        keepAliveTimeout: number;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    // https://github.com/nodejs/node/blob/master/lib/_http_outgoing.js
 | 
					 | 
				
			||||||
    class OutgoingMessage extends stream.Writable {
 | 
					 | 
				
			||||||
        upgrading: boolean;
 | 
					 | 
				
			||||||
        chunkedEncoding: boolean;
 | 
					 | 
				
			||||||
        shouldKeepAlive: boolean;
 | 
					 | 
				
			||||||
        useChunkedEncodingByDefault: boolean;
 | 
					 | 
				
			||||||
        sendDate: boolean;
 | 
					 | 
				
			||||||
        finished: boolean;
 | 
					 | 
				
			||||||
        headersSent: boolean;
 | 
					 | 
				
			||||||
        connection: Socket;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        constructor();
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        setTimeout(msecs: number, callback?: () => void): this;
 | 
					 | 
				
			||||||
        setHeader(name: string, value: number | string | string[]): void;
 | 
					 | 
				
			||||||
        getHeader(name: string): number | string | string[] | undefined;
 | 
					 | 
				
			||||||
        getHeaders(): OutgoingHttpHeaders;
 | 
					 | 
				
			||||||
        getHeaderNames(): string[];
 | 
					 | 
				
			||||||
        hasHeader(name: string): boolean;
 | 
					 | 
				
			||||||
        removeHeader(name: string): void;
 | 
					 | 
				
			||||||
        addTrailers(headers: OutgoingHttpHeaders | Array<[string, string]>): void;
 | 
					 | 
				
			||||||
        flushHeaders(): void;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    // https://github.com/nodejs/node/blob/master/lib/_http_server.js#L108-L256
 | 
					 | 
				
			||||||
    class ServerResponse extends OutgoingMessage {
 | 
					 | 
				
			||||||
        statusCode: number;
 | 
					 | 
				
			||||||
        statusMessage: string;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        constructor(req: IncomingMessage);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        assignSocket(socket: Socket): void;
 | 
					 | 
				
			||||||
        detachSocket(socket: Socket): void;
 | 
					 | 
				
			||||||
        // https://github.com/nodejs/node/blob/master/test/parallel/test-http-write-callbacks.js#L53
 | 
					 | 
				
			||||||
        // no args in writeContinue callback
 | 
					 | 
				
			||||||
        writeContinue(callback?: () => void): void;
 | 
					 | 
				
			||||||
        writeHead(statusCode: number, reasonPhrase?: string, headers?: OutgoingHttpHeaders): this;
 | 
					 | 
				
			||||||
        writeHead(statusCode: number, headers?: OutgoingHttpHeaders): this;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    // https://github.com/nodejs/node/blob/master/lib/_http_client.js#L77
 | 
					 | 
				
			||||||
    class ClientRequest extends OutgoingMessage {
 | 
					 | 
				
			||||||
        connection: Socket;
 | 
					 | 
				
			||||||
        socket: Socket;
 | 
					 | 
				
			||||||
        aborted: number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        constructor(url: string | URL | ClientRequestArgs, cb?: (res: IncomingMessage) => void);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        readonly path: string;
 | 
					 | 
				
			||||||
        abort(): void;
 | 
					 | 
				
			||||||
        onSocket(socket: Socket): void;
 | 
					 | 
				
			||||||
        setTimeout(timeout: number, callback?: () => void): this;
 | 
					 | 
				
			||||||
        setNoDelay(noDelay?: boolean): void;
 | 
					 | 
				
			||||||
        setSocketKeepAlive(enable?: boolean, initialDelay?: number): void;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    class IncomingMessage extends stream.Readable {
 | 
					 | 
				
			||||||
        constructor(socket: Socket);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        httpVersion: string;
 | 
					 | 
				
			||||||
        httpVersionMajor: number;
 | 
					 | 
				
			||||||
        httpVersionMinor: number;
 | 
					 | 
				
			||||||
        complete: boolean;
 | 
					 | 
				
			||||||
        connection: Socket;
 | 
					 | 
				
			||||||
        headers: IncomingHttpHeaders;
 | 
					 | 
				
			||||||
        rawHeaders: string[];
 | 
					 | 
				
			||||||
        trailers: { [key: string]: string | undefined };
 | 
					 | 
				
			||||||
        rawTrailers: string[];
 | 
					 | 
				
			||||||
        setTimeout(msecs: number, callback: () => void): this;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Only valid for request obtained from http.Server.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        method?: string;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Only valid for request obtained from http.Server.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        url?: string;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Only valid for response obtained from http.ClientRequest.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        statusCode?: number;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Only valid for response obtained from http.ClientRequest.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        statusMessage?: string;
 | 
					 | 
				
			||||||
        socket: Socket;
 | 
					 | 
				
			||||||
        destroy(error?: Error): void;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface AgentOptions {
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Keep sockets around in a pool to be used by other requests in the future. Default = false
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        keepAlive?: boolean;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * When using HTTP KeepAlive, how often to send TCP KeepAlive packets over sockets being kept alive. Default = 1000.
 | 
					 | 
				
			||||||
         * Only relevant if keepAlive is set to true.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        keepAliveMsecs?: number;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Maximum number of sockets to allow per host. Default for Node 0.10 is 5, default for Node 0.12 is Infinity
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        maxSockets?: number;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Maximum number of sockets to leave open in a free state. Only relevant if keepAlive is set to true. Default = 256.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        maxFreeSockets?: number;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Socket timeout in milliseconds. This will set the timeout after the socket is connected.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        timeout?: number;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    class Agent {
 | 
					 | 
				
			||||||
        maxFreeSockets: number;
 | 
					 | 
				
			||||||
        maxSockets: number;
 | 
					 | 
				
			||||||
        readonly sockets: {
 | 
					 | 
				
			||||||
            readonly [key: string]: Socket[];
 | 
					 | 
				
			||||||
        };
 | 
					 | 
				
			||||||
        readonly requests: {
 | 
					 | 
				
			||||||
            readonly [key: string]: IncomingMessage[];
 | 
					 | 
				
			||||||
        };
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        constructor(opts?: AgentOptions);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Destroy any sockets that are currently in use by the agent.
 | 
					 | 
				
			||||||
         * It is usually not necessary to do this. However, if you are using an agent with KeepAlive enabled,
 | 
					 | 
				
			||||||
         * then it is best to explicitly shut down the agent when you know that it will no longer be used. Otherwise,
 | 
					 | 
				
			||||||
         * sockets may hang open for quite a long time before the server terminates them.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        destroy(): void;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    const METHODS: string[];
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    const STATUS_CODES: {
 | 
					 | 
				
			||||||
        [errorCode: number]: string | undefined;
 | 
					 | 
				
			||||||
        [errorCode: string]: string | undefined;
 | 
					 | 
				
			||||||
    };
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function createServer(requestListener?: RequestListener): Server;
 | 
					 | 
				
			||||||
    function createServer(options: ServerOptions, requestListener?: RequestListener): Server;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    // although RequestOptions are passed as ClientRequestArgs to ClientRequest directly,
 | 
					 | 
				
			||||||
    // create interface RequestOptions would make the naming more clear to developers
 | 
					 | 
				
			||||||
    interface RequestOptions extends ClientRequestArgs { }
 | 
					 | 
				
			||||||
    function request(options: RequestOptions | string | URL, callback?: (res: IncomingMessage) => void): ClientRequest;
 | 
					 | 
				
			||||||
    function request(url: string | URL, options: RequestOptions, callback?: (res: IncomingMessage) => void): ClientRequest;
 | 
					 | 
				
			||||||
    function get(options: RequestOptions | string | URL, callback?: (res: IncomingMessage) => void): ClientRequest;
 | 
					 | 
				
			||||||
    function get(url: string | URL, options: RequestOptions, callback?: (res: IncomingMessage) => void): ClientRequest;
 | 
					 | 
				
			||||||
    let globalAgent: Agent;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * Read-only property specifying the maximum allowed size of HTTP headers in bytes.
 | 
					 | 
				
			||||||
     * Defaults to 8KB. Configurable using the [`--max-http-header-size`][] CLI option.
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    const maxHeaderSize: number;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										960
									
								
								node_modules/@types/node/http2.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										960
									
								
								node_modules/@types/node/http2.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,960 +0,0 @@
 | 
				
			|||||||
declare module "http2" {
 | 
					 | 
				
			||||||
    import * as events from "events";
 | 
					 | 
				
			||||||
    import * as fs from "fs";
 | 
					 | 
				
			||||||
    import * as net from "net";
 | 
					 | 
				
			||||||
    import * as stream from "stream";
 | 
					 | 
				
			||||||
    import * as tls from "tls";
 | 
					 | 
				
			||||||
    import * as url from "url";
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    import { IncomingHttpHeaders as Http1IncomingHttpHeaders, OutgoingHttpHeaders, IncomingMessage, ServerResponse } from "http";
 | 
					 | 
				
			||||||
    export { OutgoingHttpHeaders } from "http";
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    export interface IncomingHttpStatusHeader {
 | 
					 | 
				
			||||||
        ":status"?: number;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    export interface IncomingHttpHeaders extends Http1IncomingHttpHeaders {
 | 
					 | 
				
			||||||
        ":path"?: string;
 | 
					 | 
				
			||||||
        ":method"?: string;
 | 
					 | 
				
			||||||
        ":authority"?: string;
 | 
					 | 
				
			||||||
        ":scheme"?: string;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    // Http2Stream
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    export interface StreamPriorityOptions {
 | 
					 | 
				
			||||||
        exclusive?: boolean;
 | 
					 | 
				
			||||||
        parent?: number;
 | 
					 | 
				
			||||||
        weight?: number;
 | 
					 | 
				
			||||||
        silent?: boolean;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    export interface StreamState {
 | 
					 | 
				
			||||||
        localWindowSize?: number;
 | 
					 | 
				
			||||||
        state?: number;
 | 
					 | 
				
			||||||
        localClose?: number;
 | 
					 | 
				
			||||||
        remoteClose?: number;
 | 
					 | 
				
			||||||
        sumDependencyWeight?: number;
 | 
					 | 
				
			||||||
        weight?: number;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    export interface ServerStreamResponseOptions {
 | 
					 | 
				
			||||||
        endStream?: boolean;
 | 
					 | 
				
			||||||
        waitForTrailers?: boolean;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    export interface StatOptions {
 | 
					 | 
				
			||||||
        offset: number;
 | 
					 | 
				
			||||||
        length: number;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    export interface ServerStreamFileResponseOptions {
 | 
					 | 
				
			||||||
        statCheck?: (stats: fs.Stats, headers: OutgoingHttpHeaders, statOptions: StatOptions) => void | boolean;
 | 
					 | 
				
			||||||
        waitForTrailers?: boolean;
 | 
					 | 
				
			||||||
        offset?: number;
 | 
					 | 
				
			||||||
        length?: number;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    export interface ServerStreamFileResponseOptionsWithError extends ServerStreamFileResponseOptions {
 | 
					 | 
				
			||||||
        onError?: (err: NodeJS.ErrnoException) => void;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    export class Http2Stream extends stream.Duplex {
 | 
					 | 
				
			||||||
        protected constructor();
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        readonly aborted: boolean;
 | 
					 | 
				
			||||||
        readonly bufferSize: number;
 | 
					 | 
				
			||||||
        readonly closed: boolean;
 | 
					 | 
				
			||||||
        readonly destroyed: boolean;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Set the true if the END_STREAM flag was set in the request or response HEADERS frame received,
 | 
					 | 
				
			||||||
         * indicating that no additional data should be received and the readable side of the Http2Stream will be closed.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        readonly endAfterHeaders: boolean;
 | 
					 | 
				
			||||||
        readonly id?: number;
 | 
					 | 
				
			||||||
        readonly pending: boolean;
 | 
					 | 
				
			||||||
        readonly rstCode: number;
 | 
					 | 
				
			||||||
        readonly sentHeaders: OutgoingHttpHeaders;
 | 
					 | 
				
			||||||
        readonly sentInfoHeaders?: OutgoingHttpHeaders[];
 | 
					 | 
				
			||||||
        readonly sentTrailers?: OutgoingHttpHeaders;
 | 
					 | 
				
			||||||
        readonly session: Http2Session;
 | 
					 | 
				
			||||||
        readonly state: StreamState;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        close(code?: number, callback?: () => void): void;
 | 
					 | 
				
			||||||
        priority(options: StreamPriorityOptions): void;
 | 
					 | 
				
			||||||
        setTimeout(msecs: number, callback?: () => void): void;
 | 
					 | 
				
			||||||
        sendTrailers(headers: OutgoingHttpHeaders): void;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        addListener(event: "aborted", listener: () => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "data", listener: (chunk: Buffer | string) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "drain", listener: () => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "end", listener: () => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "finish", listener: () => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "frameError", listener: (frameType: number, errorCode: number) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "pipe", listener: (src: stream.Readable) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "unpipe", listener: (src: stream.Readable) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "streamClosed", listener: (code: number) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "timeout", listener: () => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "trailers", listener: (trailers: IncomingHttpHeaders, flags: number) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "wantTrailers", listener: () => void): this;
 | 
					 | 
				
			||||||
        addListener(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        emit(event: "aborted"): boolean;
 | 
					 | 
				
			||||||
        emit(event: "close"): boolean;
 | 
					 | 
				
			||||||
        emit(event: "data", chunk: Buffer | string): boolean;
 | 
					 | 
				
			||||||
        emit(event: "drain"): boolean;
 | 
					 | 
				
			||||||
        emit(event: "end"): boolean;
 | 
					 | 
				
			||||||
        emit(event: "error", err: Error): boolean;
 | 
					 | 
				
			||||||
        emit(event: "finish"): boolean;
 | 
					 | 
				
			||||||
        emit(event: "frameError", frameType: number, errorCode: number): boolean;
 | 
					 | 
				
			||||||
        emit(event: "pipe", src: stream.Readable): boolean;
 | 
					 | 
				
			||||||
        emit(event: "unpipe", src: stream.Readable): boolean;
 | 
					 | 
				
			||||||
        emit(event: "streamClosed", code: number): boolean;
 | 
					 | 
				
			||||||
        emit(event: "timeout"): boolean;
 | 
					 | 
				
			||||||
        emit(event: "trailers", trailers: IncomingHttpHeaders, flags: number): boolean;
 | 
					 | 
				
			||||||
        emit(event: "wantTrailers"): boolean;
 | 
					 | 
				
			||||||
        emit(event: string | symbol, ...args: any[]): boolean;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        on(event: "aborted", listener: () => void): this;
 | 
					 | 
				
			||||||
        on(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
        on(event: "data", listener: (chunk: Buffer | string) => void): this;
 | 
					 | 
				
			||||||
        on(event: "drain", listener: () => void): this;
 | 
					 | 
				
			||||||
        on(event: "end", listener: () => void): this;
 | 
					 | 
				
			||||||
        on(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        on(event: "finish", listener: () => void): this;
 | 
					 | 
				
			||||||
        on(event: "frameError", listener: (frameType: number, errorCode: number) => void): this;
 | 
					 | 
				
			||||||
        on(event: "pipe", listener: (src: stream.Readable) => void): this;
 | 
					 | 
				
			||||||
        on(event: "unpipe", listener: (src: stream.Readable) => void): this;
 | 
					 | 
				
			||||||
        on(event: "streamClosed", listener: (code: number) => void): this;
 | 
					 | 
				
			||||||
        on(event: "timeout", listener: () => void): this;
 | 
					 | 
				
			||||||
        on(event: "trailers", listener: (trailers: IncomingHttpHeaders, flags: number) => void): this;
 | 
					 | 
				
			||||||
        on(event: "wantTrailers", listener: () => void): this;
 | 
					 | 
				
			||||||
        on(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        once(event: "aborted", listener: () => void): this;
 | 
					 | 
				
			||||||
        once(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
        once(event: "data", listener: (chunk: Buffer | string) => void): this;
 | 
					 | 
				
			||||||
        once(event: "drain", listener: () => void): this;
 | 
					 | 
				
			||||||
        once(event: "end", listener: () => void): this;
 | 
					 | 
				
			||||||
        once(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        once(event: "finish", listener: () => void): this;
 | 
					 | 
				
			||||||
        once(event: "frameError", listener: (frameType: number, errorCode: number) => void): this;
 | 
					 | 
				
			||||||
        once(event: "pipe", listener: (src: stream.Readable) => void): this;
 | 
					 | 
				
			||||||
        once(event: "unpipe", listener: (src: stream.Readable) => void): this;
 | 
					 | 
				
			||||||
        once(event: "streamClosed", listener: (code: number) => void): this;
 | 
					 | 
				
			||||||
        once(event: "timeout", listener: () => void): this;
 | 
					 | 
				
			||||||
        once(event: "trailers", listener: (trailers: IncomingHttpHeaders, flags: number) => void): this;
 | 
					 | 
				
			||||||
        once(event: "wantTrailers", listener: () => void): this;
 | 
					 | 
				
			||||||
        once(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        prependListener(event: "aborted", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "data", listener: (chunk: Buffer | string) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "drain", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "end", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "finish", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "frameError", listener: (frameType: number, errorCode: number) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "pipe", listener: (src: stream.Readable) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "unpipe", listener: (src: stream.Readable) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "streamClosed", listener: (code: number) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "timeout", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "trailers", listener: (trailers: IncomingHttpHeaders, flags: number) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "wantTrailers", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        prependOnceListener(event: "aborted", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "data", listener: (chunk: Buffer | string) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "drain", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "end", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "finish", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "frameError", listener: (frameType: number, errorCode: number) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "pipe", listener: (src: stream.Readable) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "unpipe", listener: (src: stream.Readable) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "streamClosed", listener: (code: number) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "timeout", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "trailers", listener: (trailers: IncomingHttpHeaders, flags: number) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "wantTrailers", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    export class ClientHttp2Stream extends Http2Stream {
 | 
					 | 
				
			||||||
        private constructor();
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        addListener(event: "continue", listener: () => {}): this;
 | 
					 | 
				
			||||||
        addListener(event: "headers", listener: (headers: IncomingHttpHeaders & IncomingHttpStatusHeader, flags: number) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "push", listener: (headers: IncomingHttpHeaders, flags: number) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "response", listener: (headers: IncomingHttpHeaders & IncomingHttpStatusHeader, flags: number) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        emit(event: "continue"): boolean;
 | 
					 | 
				
			||||||
        emit(event: "headers", headers: IncomingHttpHeaders & IncomingHttpStatusHeader, flags: number): boolean;
 | 
					 | 
				
			||||||
        emit(event: "push", headers: IncomingHttpHeaders, flags: number): boolean;
 | 
					 | 
				
			||||||
        emit(event: "response", headers: IncomingHttpHeaders & IncomingHttpStatusHeader, flags: number): boolean;
 | 
					 | 
				
			||||||
        emit(event: string | symbol, ...args: any[]): boolean;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        on(event: "continue", listener: () => {}): this;
 | 
					 | 
				
			||||||
        on(event: "headers", listener: (headers: IncomingHttpHeaders & IncomingHttpStatusHeader, flags: number) => void): this;
 | 
					 | 
				
			||||||
        on(event: "push", listener: (headers: IncomingHttpHeaders, flags: number) => void): this;
 | 
					 | 
				
			||||||
        on(event: "response", listener: (headers: IncomingHttpHeaders & IncomingHttpStatusHeader, flags: number) => void): this;
 | 
					 | 
				
			||||||
        on(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        once(event: "continue", listener: () => {}): this;
 | 
					 | 
				
			||||||
        once(event: "headers", listener: (headers: IncomingHttpHeaders & IncomingHttpStatusHeader, flags: number) => void): this;
 | 
					 | 
				
			||||||
        once(event: "push", listener: (headers: IncomingHttpHeaders, flags: number) => void): this;
 | 
					 | 
				
			||||||
        once(event: "response", listener: (headers: IncomingHttpHeaders & IncomingHttpStatusHeader, flags: number) => void): this;
 | 
					 | 
				
			||||||
        once(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        prependListener(event: "continue", listener: () => {}): this;
 | 
					 | 
				
			||||||
        prependListener(event: "headers", listener: (headers: IncomingHttpHeaders & IncomingHttpStatusHeader, flags: number) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "push", listener: (headers: IncomingHttpHeaders, flags: number) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "response", listener: (headers: IncomingHttpHeaders & IncomingHttpStatusHeader, flags: number) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        prependOnceListener(event: "continue", listener: () => {}): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "headers", listener: (headers: IncomingHttpHeaders & IncomingHttpStatusHeader, flags: number) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "push", listener: (headers: IncomingHttpHeaders, flags: number) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "response", listener: (headers: IncomingHttpHeaders & IncomingHttpStatusHeader, flags: number) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    export class ServerHttp2Stream extends Http2Stream {
 | 
					 | 
				
			||||||
        private constructor();
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        additionalHeaders(headers: OutgoingHttpHeaders): void;
 | 
					 | 
				
			||||||
        readonly headersSent: boolean;
 | 
					 | 
				
			||||||
        readonly pushAllowed: boolean;
 | 
					 | 
				
			||||||
        pushStream(headers: OutgoingHttpHeaders, callback?: (err: Error | null, pushStream: ServerHttp2Stream, headers: OutgoingHttpHeaders) => void): void;
 | 
					 | 
				
			||||||
        pushStream(headers: OutgoingHttpHeaders, options?: StreamPriorityOptions, callback?: (err: Error | null, pushStream: ServerHttp2Stream, headers: OutgoingHttpHeaders) => void): void;
 | 
					 | 
				
			||||||
        respond(headers?: OutgoingHttpHeaders, options?: ServerStreamResponseOptions): void;
 | 
					 | 
				
			||||||
        respondWithFD(fd: number, headers?: OutgoingHttpHeaders, options?: ServerStreamFileResponseOptions): void;
 | 
					 | 
				
			||||||
        respondWithFile(path: string, headers?: OutgoingHttpHeaders, options?: ServerStreamFileResponseOptionsWithError): void;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    // Http2Session
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    export interface Settings {
 | 
					 | 
				
			||||||
        headerTableSize?: number;
 | 
					 | 
				
			||||||
        enablePush?: boolean;
 | 
					 | 
				
			||||||
        initialWindowSize?: number;
 | 
					 | 
				
			||||||
        maxFrameSize?: number;
 | 
					 | 
				
			||||||
        maxConcurrentStreams?: number;
 | 
					 | 
				
			||||||
        maxHeaderListSize?: number;
 | 
					 | 
				
			||||||
        enableConnectProtocol?: boolean;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    export interface ClientSessionRequestOptions {
 | 
					 | 
				
			||||||
        endStream?: boolean;
 | 
					 | 
				
			||||||
        exclusive?: boolean;
 | 
					 | 
				
			||||||
        parent?: number;
 | 
					 | 
				
			||||||
        weight?: number;
 | 
					 | 
				
			||||||
        waitForTrailers?: boolean;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    export interface SessionState {
 | 
					 | 
				
			||||||
        effectiveLocalWindowSize?: number;
 | 
					 | 
				
			||||||
        effectiveRecvDataLength?: number;
 | 
					 | 
				
			||||||
        nextStreamID?: number;
 | 
					 | 
				
			||||||
        localWindowSize?: number;
 | 
					 | 
				
			||||||
        lastProcStreamID?: number;
 | 
					 | 
				
			||||||
        remoteWindowSize?: number;
 | 
					 | 
				
			||||||
        outboundQueueSize?: number;
 | 
					 | 
				
			||||||
        deflateDynamicTableSize?: number;
 | 
					 | 
				
			||||||
        inflateDynamicTableSize?: number;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    export class Http2Session extends events.EventEmitter {
 | 
					 | 
				
			||||||
        protected constructor();
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        readonly alpnProtocol?: string;
 | 
					 | 
				
			||||||
        close(callback?: () => void): void;
 | 
					 | 
				
			||||||
        readonly closed: boolean;
 | 
					 | 
				
			||||||
        readonly connecting: boolean;
 | 
					 | 
				
			||||||
        destroy(error?: Error, code?: number): void;
 | 
					 | 
				
			||||||
        readonly destroyed: boolean;
 | 
					 | 
				
			||||||
        readonly encrypted?: boolean;
 | 
					 | 
				
			||||||
        goaway(code?: number, lastStreamID?: number, opaqueData?: Buffer | DataView | NodeJS.TypedArray): void;
 | 
					 | 
				
			||||||
        readonly localSettings: Settings;
 | 
					 | 
				
			||||||
        readonly originSet?: string[];
 | 
					 | 
				
			||||||
        readonly pendingSettingsAck: boolean;
 | 
					 | 
				
			||||||
        ping(callback: (err: Error | null, duration: number, payload: Buffer) => void): boolean;
 | 
					 | 
				
			||||||
        ping(payload: Buffer | DataView | NodeJS.TypedArray , callback: (err: Error | null, duration: number, payload: Buffer) => void): boolean;
 | 
					 | 
				
			||||||
        ref(): void;
 | 
					 | 
				
			||||||
        readonly remoteSettings: Settings;
 | 
					 | 
				
			||||||
        setTimeout(msecs: number, callback?: () => void): void;
 | 
					 | 
				
			||||||
        readonly socket: net.Socket | tls.TLSSocket;
 | 
					 | 
				
			||||||
        readonly state: SessionState;
 | 
					 | 
				
			||||||
        settings(settings: Settings): void;
 | 
					 | 
				
			||||||
        readonly type: number;
 | 
					 | 
				
			||||||
        unref(): void;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        addListener(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "frameError", listener: (frameType: number, errorCode: number, streamID: number) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "goaway", listener: (errorCode: number, lastStreamID: number, opaqueData: Buffer) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "localSettings", listener: (settings: Settings) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "ping", listener: () => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "remoteSettings", listener: (settings: Settings) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "timeout", listener: () => void): this;
 | 
					 | 
				
			||||||
        addListener(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        emit(event: "close"): boolean;
 | 
					 | 
				
			||||||
        emit(event: "error", err: Error): boolean;
 | 
					 | 
				
			||||||
        emit(event: "frameError", frameType: number, errorCode: number, streamID: number): boolean;
 | 
					 | 
				
			||||||
        emit(event: "goaway", errorCode: number, lastStreamID: number, opaqueData: Buffer): boolean;
 | 
					 | 
				
			||||||
        emit(event: "localSettings", settings: Settings): boolean;
 | 
					 | 
				
			||||||
        emit(event: "ping"): boolean;
 | 
					 | 
				
			||||||
        emit(event: "remoteSettings", settings: Settings): boolean;
 | 
					 | 
				
			||||||
        emit(event: "timeout"): boolean;
 | 
					 | 
				
			||||||
        emit(event: string | symbol, ...args: any[]): boolean;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        on(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
        on(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        on(event: "frameError", listener: (frameType: number, errorCode: number, streamID: number) => void): this;
 | 
					 | 
				
			||||||
        on(event: "goaway", listener: (errorCode: number, lastStreamID: number, opaqueData: Buffer) => void): this;
 | 
					 | 
				
			||||||
        on(event: "localSettings", listener: (settings: Settings) => void): this;
 | 
					 | 
				
			||||||
        on(event: "ping", listener: () => void): this;
 | 
					 | 
				
			||||||
        on(event: "remoteSettings", listener: (settings: Settings) => void): this;
 | 
					 | 
				
			||||||
        on(event: "timeout", listener: () => void): this;
 | 
					 | 
				
			||||||
        on(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        once(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
        once(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        once(event: "frameError", listener: (frameType: number, errorCode: number, streamID: number) => void): this;
 | 
					 | 
				
			||||||
        once(event: "goaway", listener: (errorCode: number, lastStreamID: number, opaqueData: Buffer) => void): this;
 | 
					 | 
				
			||||||
        once(event: "localSettings", listener: (settings: Settings) => void): this;
 | 
					 | 
				
			||||||
        once(event: "ping", listener: () => void): this;
 | 
					 | 
				
			||||||
        once(event: "remoteSettings", listener: (settings: Settings) => void): this;
 | 
					 | 
				
			||||||
        once(event: "timeout", listener: () => void): this;
 | 
					 | 
				
			||||||
        once(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        prependListener(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "frameError", listener: (frameType: number, errorCode: number, streamID: number) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "goaway", listener: (errorCode: number, lastStreamID: number, opaqueData: Buffer) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "localSettings", listener: (settings: Settings) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "ping", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "remoteSettings", listener: (settings: Settings) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "timeout", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        prependOnceListener(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "frameError", listener: (frameType: number, errorCode: number, streamID: number) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "goaway", listener: (errorCode: number, lastStreamID: number, opaqueData: Buffer) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "localSettings", listener: (settings: Settings) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "ping", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "remoteSettings", listener: (settings: Settings) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "timeout", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    export class ClientHttp2Session extends Http2Session {
 | 
					 | 
				
			||||||
        private constructor();
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        request(headers?: OutgoingHttpHeaders, options?: ClientSessionRequestOptions): ClientHttp2Stream;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        addListener(event: "altsvc", listener: (alt: string, origin: string, stream: number) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "origin", listener: (origins: string[]) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "connect", listener: (session: ClientHttp2Session, socket: net.Socket | tls.TLSSocket) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "stream", listener: (stream: ClientHttp2Stream, headers: IncomingHttpHeaders & IncomingHttpStatusHeader, flags: number) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        emit(event: "altsvc", alt: string, origin: string, stream: number): boolean;
 | 
					 | 
				
			||||||
        emit(event: "origin", origins: string[]): boolean;
 | 
					 | 
				
			||||||
        emit(event: "connect", session: ClientHttp2Session, socket: net.Socket | tls.TLSSocket): boolean;
 | 
					 | 
				
			||||||
        emit(event: "stream", stream: ClientHttp2Stream, headers: IncomingHttpHeaders & IncomingHttpStatusHeader, flags: number): boolean;
 | 
					 | 
				
			||||||
        emit(event: string | symbol, ...args: any[]): boolean;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        on(event: "altsvc", listener: (alt: string, origin: string, stream: number) => void): this;
 | 
					 | 
				
			||||||
        on(event: "origin", listener: (origins: string[]) => void): this;
 | 
					 | 
				
			||||||
        on(event: "connect", listener: (session: ClientHttp2Session, socket: net.Socket | tls.TLSSocket) => void): this;
 | 
					 | 
				
			||||||
        on(event: "stream", listener: (stream: ClientHttp2Stream, headers: IncomingHttpHeaders & IncomingHttpStatusHeader, flags: number) => void): this;
 | 
					 | 
				
			||||||
        on(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        once(event: "altsvc", listener: (alt: string, origin: string, stream: number) => void): this;
 | 
					 | 
				
			||||||
        once(event: "origin", listener: (origins: string[]) => void): this;
 | 
					 | 
				
			||||||
        once(event: "connect", listener: (session: ClientHttp2Session, socket: net.Socket | tls.TLSSocket) => void): this;
 | 
					 | 
				
			||||||
        once(event: "stream", listener: (stream: ClientHttp2Stream, headers: IncomingHttpHeaders & IncomingHttpStatusHeader, flags: number) => void): this;
 | 
					 | 
				
			||||||
        once(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        prependListener(event: "altsvc", listener: (alt: string, origin: string, stream: number) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "origin", listener: (origins: string[]) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "connect", listener: (session: ClientHttp2Session, socket: net.Socket | tls.TLSSocket) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "stream", listener: (stream: ClientHttp2Stream, headers: IncomingHttpHeaders & IncomingHttpStatusHeader, flags: number) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        prependOnceListener(event: "altsvc", listener: (alt: string, origin: string, stream: number) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "origin", listener: (origins: string[]) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "connect", listener: (session: ClientHttp2Session, socket: net.Socket | tls.TLSSocket) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "stream", listener: (stream: ClientHttp2Stream, headers: IncomingHttpHeaders & IncomingHttpStatusHeader, flags: number) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    export interface AlternativeServiceOptions {
 | 
					 | 
				
			||||||
        origin: number | string | url.URL;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    export class ServerHttp2Session extends Http2Session {
 | 
					 | 
				
			||||||
        private constructor();
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        altsvc(alt: string, originOrStream: number | string | url.URL | AlternativeServiceOptions): void;
 | 
					 | 
				
			||||||
        origin(...args: Array<string | url.URL | { origin: string }>): void;
 | 
					 | 
				
			||||||
        readonly server: Http2Server | Http2SecureServer;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        addListener(event: "connect", listener: (session: ServerHttp2Session, socket: net.Socket | tls.TLSSocket) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "stream", listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        emit(event: "connect", session: ServerHttp2Session, socket: net.Socket | tls.TLSSocket): boolean;
 | 
					 | 
				
			||||||
        emit(event: "stream", stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number): boolean;
 | 
					 | 
				
			||||||
        emit(event: string | symbol, ...args: any[]): boolean;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        on(event: "connect", listener: (session: ServerHttp2Session, socket: net.Socket | tls.TLSSocket) => void): this;
 | 
					 | 
				
			||||||
        on(event: "stream", listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void): this;
 | 
					 | 
				
			||||||
        on(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        once(event: "connect", listener: (session: ServerHttp2Session, socket: net.Socket | tls.TLSSocket) => void): this;
 | 
					 | 
				
			||||||
        once(event: "stream", listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void): this;
 | 
					 | 
				
			||||||
        once(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        prependListener(event: "connect", listener: (session: ServerHttp2Session, socket: net.Socket | tls.TLSSocket) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "stream", listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        prependOnceListener(event: "connect", listener: (session: ServerHttp2Session, socket: net.Socket | tls.TLSSocket) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "stream", listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    // Http2Server
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    export interface SessionOptions {
 | 
					 | 
				
			||||||
        maxDeflateDynamicTableSize?: number;
 | 
					 | 
				
			||||||
        maxSessionMemory?: number;
 | 
					 | 
				
			||||||
        maxHeaderListPairs?: number;
 | 
					 | 
				
			||||||
        maxOutstandingPings?: number;
 | 
					 | 
				
			||||||
        maxSendHeaderBlockLength?: number;
 | 
					 | 
				
			||||||
        paddingStrategy?: number;
 | 
					 | 
				
			||||||
        peerMaxConcurrentStreams?: number;
 | 
					 | 
				
			||||||
        selectPadding?: (frameLen: number, maxFrameLen: number) => number;
 | 
					 | 
				
			||||||
        settings?: Settings;
 | 
					 | 
				
			||||||
        createConnection?: (authority: url.URL, option: SessionOptions) => stream.Duplex;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    export interface ClientSessionOptions extends SessionOptions {
 | 
					 | 
				
			||||||
        maxReservedRemoteStreams?: number;
 | 
					 | 
				
			||||||
        createConnection?: (authority: url.URL, option: SessionOptions) => stream.Duplex;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    export interface ServerSessionOptions extends SessionOptions {
 | 
					 | 
				
			||||||
        Http1IncomingMessage?: typeof IncomingMessage;
 | 
					 | 
				
			||||||
        Http1ServerResponse?: typeof ServerResponse;
 | 
					 | 
				
			||||||
        Http2ServerRequest?: typeof Http2ServerRequest;
 | 
					 | 
				
			||||||
        Http2ServerResponse?: typeof Http2ServerResponse;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    export interface SecureClientSessionOptions extends ClientSessionOptions, tls.ConnectionOptions { }
 | 
					 | 
				
			||||||
    export interface SecureServerSessionOptions extends ServerSessionOptions, tls.TlsOptions { }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    export interface ServerOptions extends ServerSessionOptions { }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    export interface SecureServerOptions extends SecureServerSessionOptions {
 | 
					 | 
				
			||||||
        allowHTTP1?: boolean;
 | 
					 | 
				
			||||||
        origins?: string[];
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    export class Http2Server extends net.Server {
 | 
					 | 
				
			||||||
        private constructor();
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        addListener(event: "checkContinue", listener: (request: Http2ServerRequest, response: Http2ServerResponse) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "request", listener: (request: Http2ServerRequest, response: Http2ServerResponse) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "session", listener: (session: ServerHttp2Session) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "sessionError", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "stream", listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "timeout", listener: () => void): this;
 | 
					 | 
				
			||||||
        addListener(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        emit(event: "checkContinue", request: Http2ServerRequest, response: Http2ServerResponse): boolean;
 | 
					 | 
				
			||||||
        emit(event: "request", request: Http2ServerRequest, response: Http2ServerResponse): boolean;
 | 
					 | 
				
			||||||
        emit(event: "session", session: ServerHttp2Session): boolean;
 | 
					 | 
				
			||||||
        emit(event: "sessionError", err: Error): boolean;
 | 
					 | 
				
			||||||
        emit(event: "stream", stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number): boolean;
 | 
					 | 
				
			||||||
        emit(event: "timeout"): boolean;
 | 
					 | 
				
			||||||
        emit(event: string | symbol, ...args: any[]): boolean;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        on(event: "checkContinue", listener: (request: Http2ServerRequest, response: Http2ServerResponse) => void): this;
 | 
					 | 
				
			||||||
        on(event: "request", listener: (request: Http2ServerRequest, response: Http2ServerResponse) => void): this;
 | 
					 | 
				
			||||||
        on(event: "session", listener: (session: ServerHttp2Session) => void): this;
 | 
					 | 
				
			||||||
        on(event: "sessionError", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        on(event: "stream", listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void): this;
 | 
					 | 
				
			||||||
        on(event: "timeout", listener: () => void): this;
 | 
					 | 
				
			||||||
        on(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        once(event: "checkContinue", listener: (request: Http2ServerRequest, response: Http2ServerResponse) => void): this;
 | 
					 | 
				
			||||||
        once(event: "request", listener: (request: Http2ServerRequest, response: Http2ServerResponse) => void): this;
 | 
					 | 
				
			||||||
        once(event: "session", listener: (session: ServerHttp2Session) => void): this;
 | 
					 | 
				
			||||||
        once(event: "sessionError", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        once(event: "stream", listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void): this;
 | 
					 | 
				
			||||||
        once(event: "timeout", listener: () => void): this;
 | 
					 | 
				
			||||||
        once(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        prependListener(event: "checkContinue", listener: (request: Http2ServerRequest, response: Http2ServerResponse) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "request", listener: (request: Http2ServerRequest, response: Http2ServerResponse) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "session", listener: (session: ServerHttp2Session) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "sessionError", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "stream", listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "timeout", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        prependOnceListener(event: "checkContinue", listener: (request: Http2ServerRequest, response: Http2ServerResponse) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "request", listener: (request: Http2ServerRequest, response: Http2ServerResponse) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "session", listener: (session: ServerHttp2Session) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "sessionError", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "stream", listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "timeout", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        setTimeout(msec?: number, callback?: () => void): this;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    export class Http2SecureServer extends tls.Server {
 | 
					 | 
				
			||||||
        private constructor();
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        addListener(event: "checkContinue", listener: (request: Http2ServerRequest, response: Http2ServerResponse) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "request", listener: (request: Http2ServerRequest, response: Http2ServerResponse) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "session", listener: (session: ServerHttp2Session) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "sessionError", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "stream", listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "timeout", listener: () => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "unknownProtocol", listener: (socket: tls.TLSSocket) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        emit(event: "checkContinue", request: Http2ServerRequest, response: Http2ServerResponse): boolean;
 | 
					 | 
				
			||||||
        emit(event: "request", request: Http2ServerRequest, response: Http2ServerResponse): boolean;
 | 
					 | 
				
			||||||
        emit(event: "session", session: ServerHttp2Session): boolean;
 | 
					 | 
				
			||||||
        emit(event: "sessionError", err: Error): boolean;
 | 
					 | 
				
			||||||
        emit(event: "stream", stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number): boolean;
 | 
					 | 
				
			||||||
        emit(event: "timeout"): boolean;
 | 
					 | 
				
			||||||
        emit(event: "unknownProtocol", socket: tls.TLSSocket): boolean;
 | 
					 | 
				
			||||||
        emit(event: string | symbol, ...args: any[]): boolean;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        on(event: "checkContinue", listener: (request: Http2ServerRequest, response: Http2ServerResponse) => void): this;
 | 
					 | 
				
			||||||
        on(event: "request", listener: (request: Http2ServerRequest, response: Http2ServerResponse) => void): this;
 | 
					 | 
				
			||||||
        on(event: "session", listener: (session: ServerHttp2Session) => void): this;
 | 
					 | 
				
			||||||
        on(event: "sessionError", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        on(event: "stream", listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void): this;
 | 
					 | 
				
			||||||
        on(event: "timeout", listener: () => void): this;
 | 
					 | 
				
			||||||
        on(event: "unknownProtocol", listener: (socket: tls.TLSSocket) => void): this;
 | 
					 | 
				
			||||||
        on(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        once(event: "checkContinue", listener: (request: Http2ServerRequest, response: Http2ServerResponse) => void): this;
 | 
					 | 
				
			||||||
        once(event: "request", listener: (request: Http2ServerRequest, response: Http2ServerResponse) => void): this;
 | 
					 | 
				
			||||||
        once(event: "session", listener: (session: ServerHttp2Session) => void): this;
 | 
					 | 
				
			||||||
        once(event: "sessionError", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        once(event: "stream", listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void): this;
 | 
					 | 
				
			||||||
        once(event: "timeout", listener: () => void): this;
 | 
					 | 
				
			||||||
        once(event: "unknownProtocol", listener: (socket: tls.TLSSocket) => void): this;
 | 
					 | 
				
			||||||
        once(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        prependListener(event: "checkContinue", listener: (request: Http2ServerRequest, response: Http2ServerResponse) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "request", listener: (request: Http2ServerRequest, response: Http2ServerResponse) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "session", listener: (session: ServerHttp2Session) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "sessionError", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "stream", listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "timeout", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "unknownProtocol", listener: (socket: tls.TLSSocket) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        prependOnceListener(event: "checkContinue", listener: (request: Http2ServerRequest, response: Http2ServerResponse) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "request", listener: (request: Http2ServerRequest, response: Http2ServerResponse) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "session", listener: (session: ServerHttp2Session) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "sessionError", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "stream", listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "timeout", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "unknownProtocol", listener: (socket: tls.TLSSocket) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        setTimeout(msec?: number, callback?: () => void): this;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    export class Http2ServerRequest extends stream.Readable {
 | 
					 | 
				
			||||||
        private constructor();
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        readonly aborted: boolean;
 | 
					 | 
				
			||||||
        readonly authority: string;
 | 
					 | 
				
			||||||
        readonly headers: IncomingHttpHeaders;
 | 
					 | 
				
			||||||
        readonly httpVersion: string;
 | 
					 | 
				
			||||||
        readonly method: string;
 | 
					 | 
				
			||||||
        readonly rawHeaders: string[];
 | 
					 | 
				
			||||||
        readonly rawTrailers: string[];
 | 
					 | 
				
			||||||
        readonly scheme: string;
 | 
					 | 
				
			||||||
        setTimeout(msecs: number, callback?: () => void): void;
 | 
					 | 
				
			||||||
        readonly socket: net.Socket | tls.TLSSocket;
 | 
					 | 
				
			||||||
        readonly stream: ServerHttp2Stream;
 | 
					 | 
				
			||||||
        readonly trailers: IncomingHttpHeaders;
 | 
					 | 
				
			||||||
        readonly url: string;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        read(size?: number): Buffer | string | null;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        addListener(event: "aborted", listener: (hadError: boolean, code: number) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "data", listener: (chunk: Buffer | string) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "end", listener: () => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "readable", listener: () => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        emit(event: "aborted", hadError: boolean, code: number): boolean;
 | 
					 | 
				
			||||||
        emit(event: "close"): boolean;
 | 
					 | 
				
			||||||
        emit(event: "data", chunk: Buffer | string): boolean;
 | 
					 | 
				
			||||||
        emit(event: "end"): boolean;
 | 
					 | 
				
			||||||
        emit(event: "readable"): boolean;
 | 
					 | 
				
			||||||
        emit(event: "error", err: Error): boolean;
 | 
					 | 
				
			||||||
        emit(event: string | symbol, ...args: any[]): boolean;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        on(event: "aborted", listener: (hadError: boolean, code: number) => void): this;
 | 
					 | 
				
			||||||
        on(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
        on(event: "data", listener: (chunk: Buffer | string) => void): this;
 | 
					 | 
				
			||||||
        on(event: "end", listener: () => void): this;
 | 
					 | 
				
			||||||
        on(event: "readable", listener: () => void): this;
 | 
					 | 
				
			||||||
        on(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        on(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        once(event: "aborted", listener: (hadError: boolean, code: number) => void): this;
 | 
					 | 
				
			||||||
        once(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
        once(event: "data", listener: (chunk: Buffer | string) => void): this;
 | 
					 | 
				
			||||||
        once(event: "end", listener: () => void): this;
 | 
					 | 
				
			||||||
        once(event: "readable", listener: () => void): this;
 | 
					 | 
				
			||||||
        once(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        once(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        prependListener(event: "aborted", listener: (hadError: boolean, code: number) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "data", listener: (chunk: Buffer | string) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "end", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "readable", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        prependOnceListener(event: "aborted", listener: (hadError: boolean, code: number) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "data", listener: (chunk: Buffer | string) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "end", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "readable", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    export class Http2ServerResponse extends stream.Stream {
 | 
					 | 
				
			||||||
        private constructor();
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        addTrailers(trailers: OutgoingHttpHeaders): void;
 | 
					 | 
				
			||||||
        readonly connection: net.Socket | tls.TLSSocket;
 | 
					 | 
				
			||||||
        end(callback?: () => void): void;
 | 
					 | 
				
			||||||
        end(data: string | Buffer | Uint8Array, callback?: () => void): void;
 | 
					 | 
				
			||||||
        end(data: string | Buffer | Uint8Array, encoding: string, callback?: () => void): void;
 | 
					 | 
				
			||||||
        readonly finished: boolean;
 | 
					 | 
				
			||||||
        getHeader(name: string): string;
 | 
					 | 
				
			||||||
        getHeaderNames(): string[];
 | 
					 | 
				
			||||||
        getHeaders(): OutgoingHttpHeaders;
 | 
					 | 
				
			||||||
        hasHeader(name: string): boolean;
 | 
					 | 
				
			||||||
        readonly headersSent: boolean;
 | 
					 | 
				
			||||||
        removeHeader(name: string): void;
 | 
					 | 
				
			||||||
        sendDate: boolean;
 | 
					 | 
				
			||||||
        setHeader(name: string, value: number | string | string[]): void;
 | 
					 | 
				
			||||||
        setTimeout(msecs: number, callback?: () => void): void;
 | 
					 | 
				
			||||||
        readonly socket: net.Socket | tls.TLSSocket;
 | 
					 | 
				
			||||||
        statusCode: number;
 | 
					 | 
				
			||||||
        statusMessage: '';
 | 
					 | 
				
			||||||
        readonly stream: ServerHttp2Stream;
 | 
					 | 
				
			||||||
        write(chunk: string | Buffer | Uint8Array, callback?: (err: Error) => void): boolean;
 | 
					 | 
				
			||||||
        write(chunk: string | Buffer | Uint8Array, encoding: string, callback?: (err: Error) => void): boolean;
 | 
					 | 
				
			||||||
        writeContinue(): void;
 | 
					 | 
				
			||||||
        writeHead(statusCode: number, headers?: OutgoingHttpHeaders): this;
 | 
					 | 
				
			||||||
        writeHead(statusCode: number, statusMessage: string, headers?: OutgoingHttpHeaders): this;
 | 
					 | 
				
			||||||
        createPushResponse(headers: OutgoingHttpHeaders, callback: (err: Error | null, res: Http2ServerResponse) => void): void;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        addListener(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "drain", listener: () => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "error", listener: (error: Error) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "finish", listener: () => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "pipe", listener: (src: stream.Readable) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "unpipe", listener: (src: stream.Readable) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        emit(event: "close"): boolean;
 | 
					 | 
				
			||||||
        emit(event: "drain"): boolean;
 | 
					 | 
				
			||||||
        emit(event: "error", error: Error): boolean;
 | 
					 | 
				
			||||||
        emit(event: "finish"): boolean;
 | 
					 | 
				
			||||||
        emit(event: "pipe", src: stream.Readable): boolean;
 | 
					 | 
				
			||||||
        emit(event: "unpipe", src: stream.Readable): boolean;
 | 
					 | 
				
			||||||
        emit(event: string | symbol, ...args: any[]): boolean;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        on(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
        on(event: "drain", listener: () => void): this;
 | 
					 | 
				
			||||||
        on(event: "error", listener: (error: Error) => void): this;
 | 
					 | 
				
			||||||
        on(event: "finish", listener: () => void): this;
 | 
					 | 
				
			||||||
        on(event: "pipe", listener: (src: stream.Readable) => void): this;
 | 
					 | 
				
			||||||
        on(event: "unpipe", listener: (src: stream.Readable) => void): this;
 | 
					 | 
				
			||||||
        on(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        once(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
        once(event: "drain", listener: () => void): this;
 | 
					 | 
				
			||||||
        once(event: "error", listener: (error: Error) => void): this;
 | 
					 | 
				
			||||||
        once(event: "finish", listener: () => void): this;
 | 
					 | 
				
			||||||
        once(event: "pipe", listener: (src: stream.Readable) => void): this;
 | 
					 | 
				
			||||||
        once(event: "unpipe", listener: (src: stream.Readable) => void): this;
 | 
					 | 
				
			||||||
        once(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        prependListener(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "drain", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "error", listener: (error: Error) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "finish", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "pipe", listener: (src: stream.Readable) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "unpipe", listener: (src: stream.Readable) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        prependOnceListener(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "drain", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "error", listener: (error: Error) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "finish", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "pipe", listener: (src: stream.Readable) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "unpipe", listener: (src: stream.Readable) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    // Public API
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    export namespace constants {
 | 
					 | 
				
			||||||
        const NGHTTP2_SESSION_SERVER: number;
 | 
					 | 
				
			||||||
        const NGHTTP2_SESSION_CLIENT: number;
 | 
					 | 
				
			||||||
        const NGHTTP2_STREAM_STATE_IDLE: number;
 | 
					 | 
				
			||||||
        const NGHTTP2_STREAM_STATE_OPEN: number;
 | 
					 | 
				
			||||||
        const NGHTTP2_STREAM_STATE_RESERVED_LOCAL: number;
 | 
					 | 
				
			||||||
        const NGHTTP2_STREAM_STATE_RESERVED_REMOTE: number;
 | 
					 | 
				
			||||||
        const NGHTTP2_STREAM_STATE_HALF_CLOSED_LOCAL: number;
 | 
					 | 
				
			||||||
        const NGHTTP2_STREAM_STATE_HALF_CLOSED_REMOTE: number;
 | 
					 | 
				
			||||||
        const NGHTTP2_STREAM_STATE_CLOSED: number;
 | 
					 | 
				
			||||||
        const NGHTTP2_NO_ERROR: number;
 | 
					 | 
				
			||||||
        const NGHTTP2_PROTOCOL_ERROR: number;
 | 
					 | 
				
			||||||
        const NGHTTP2_INTERNAL_ERROR: number;
 | 
					 | 
				
			||||||
        const NGHTTP2_FLOW_CONTROL_ERROR: number;
 | 
					 | 
				
			||||||
        const NGHTTP2_SETTINGS_TIMEOUT: number;
 | 
					 | 
				
			||||||
        const NGHTTP2_STREAM_CLOSED: number;
 | 
					 | 
				
			||||||
        const NGHTTP2_FRAME_SIZE_ERROR: number;
 | 
					 | 
				
			||||||
        const NGHTTP2_REFUSED_STREAM: number;
 | 
					 | 
				
			||||||
        const NGHTTP2_CANCEL: number;
 | 
					 | 
				
			||||||
        const NGHTTP2_COMPRESSION_ERROR: number;
 | 
					 | 
				
			||||||
        const NGHTTP2_CONNECT_ERROR: number;
 | 
					 | 
				
			||||||
        const NGHTTP2_ENHANCE_YOUR_CALM: number;
 | 
					 | 
				
			||||||
        const NGHTTP2_INADEQUATE_SECURITY: number;
 | 
					 | 
				
			||||||
        const NGHTTP2_HTTP_1_1_REQUIRED: number;
 | 
					 | 
				
			||||||
        const NGHTTP2_ERR_FRAME_SIZE_ERROR: number;
 | 
					 | 
				
			||||||
        const NGHTTP2_FLAG_NONE: number;
 | 
					 | 
				
			||||||
        const NGHTTP2_FLAG_END_STREAM: number;
 | 
					 | 
				
			||||||
        const NGHTTP2_FLAG_END_HEADERS: number;
 | 
					 | 
				
			||||||
        const NGHTTP2_FLAG_ACK: number;
 | 
					 | 
				
			||||||
        const NGHTTP2_FLAG_PADDED: number;
 | 
					 | 
				
			||||||
        const NGHTTP2_FLAG_PRIORITY: number;
 | 
					 | 
				
			||||||
        const DEFAULT_SETTINGS_HEADER_TABLE_SIZE: number;
 | 
					 | 
				
			||||||
        const DEFAULT_SETTINGS_ENABLE_PUSH: number;
 | 
					 | 
				
			||||||
        const DEFAULT_SETTINGS_INITIAL_WINDOW_SIZE: number;
 | 
					 | 
				
			||||||
        const DEFAULT_SETTINGS_MAX_FRAME_SIZE: number;
 | 
					 | 
				
			||||||
        const MAX_MAX_FRAME_SIZE: number;
 | 
					 | 
				
			||||||
        const MIN_MAX_FRAME_SIZE: number;
 | 
					 | 
				
			||||||
        const MAX_INITIAL_WINDOW_SIZE: number;
 | 
					 | 
				
			||||||
        const NGHTTP2_DEFAULT_WEIGHT: number;
 | 
					 | 
				
			||||||
        const NGHTTP2_SETTINGS_HEADER_TABLE_SIZE: number;
 | 
					 | 
				
			||||||
        const NGHTTP2_SETTINGS_ENABLE_PUSH: number;
 | 
					 | 
				
			||||||
        const NGHTTP2_SETTINGS_MAX_CONCURRENT_STREAMS: number;
 | 
					 | 
				
			||||||
        const NGHTTP2_SETTINGS_INITIAL_WINDOW_SIZE: number;
 | 
					 | 
				
			||||||
        const NGHTTP2_SETTINGS_MAX_FRAME_SIZE: number;
 | 
					 | 
				
			||||||
        const NGHTTP2_SETTINGS_MAX_HEADER_LIST_SIZE: number;
 | 
					 | 
				
			||||||
        const PADDING_STRATEGY_NONE: number;
 | 
					 | 
				
			||||||
        const PADDING_STRATEGY_MAX: number;
 | 
					 | 
				
			||||||
        const PADDING_STRATEGY_CALLBACK: number;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_STATUS: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_METHOD: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_AUTHORITY: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_SCHEME: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_PATH: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_ACCEPT_CHARSET: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_ACCEPT_ENCODING: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_ACCEPT_LANGUAGE: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_ACCEPT_RANGES: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_ACCEPT: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_ACCESS_CONTROL_ALLOW_ORIGIN: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_AGE: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_ALLOW: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_AUTHORIZATION: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_CACHE_CONTROL: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_CONNECTION: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_CONTENT_DISPOSITION: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_CONTENT_ENCODING: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_CONTENT_LANGUAGE: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_CONTENT_LENGTH: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_CONTENT_LOCATION: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_CONTENT_MD5: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_CONTENT_RANGE: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_CONTENT_TYPE: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_COOKIE: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_DATE: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_ETAG: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_EXPECT: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_EXPIRES: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_FROM: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_HOST: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_IF_MATCH: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_IF_MODIFIED_SINCE: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_IF_NONE_MATCH: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_IF_RANGE: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_IF_UNMODIFIED_SINCE: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_LAST_MODIFIED: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_LINK: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_LOCATION: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_MAX_FORWARDS: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_PREFER: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_PROXY_AUTHENTICATE: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_PROXY_AUTHORIZATION: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_RANGE: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_REFERER: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_REFRESH: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_RETRY_AFTER: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_SERVER: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_SET_COOKIE: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_STRICT_TRANSPORT_SECURITY: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_TRANSFER_ENCODING: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_TE: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_UPGRADE: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_USER_AGENT: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_VARY: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_VIA: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_WWW_AUTHENTICATE: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_HTTP2_SETTINGS: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_KEEP_ALIVE: string;
 | 
					 | 
				
			||||||
        const HTTP2_HEADER_PROXY_CONNECTION: string;
 | 
					 | 
				
			||||||
        const HTTP2_METHOD_ACL: string;
 | 
					 | 
				
			||||||
        const HTTP2_METHOD_BASELINE_CONTROL: string;
 | 
					 | 
				
			||||||
        const HTTP2_METHOD_BIND: string;
 | 
					 | 
				
			||||||
        const HTTP2_METHOD_CHECKIN: string;
 | 
					 | 
				
			||||||
        const HTTP2_METHOD_CHECKOUT: string;
 | 
					 | 
				
			||||||
        const HTTP2_METHOD_CONNECT: string;
 | 
					 | 
				
			||||||
        const HTTP2_METHOD_COPY: string;
 | 
					 | 
				
			||||||
        const HTTP2_METHOD_DELETE: string;
 | 
					 | 
				
			||||||
        const HTTP2_METHOD_GET: string;
 | 
					 | 
				
			||||||
        const HTTP2_METHOD_HEAD: string;
 | 
					 | 
				
			||||||
        const HTTP2_METHOD_LABEL: string;
 | 
					 | 
				
			||||||
        const HTTP2_METHOD_LINK: string;
 | 
					 | 
				
			||||||
        const HTTP2_METHOD_LOCK: string;
 | 
					 | 
				
			||||||
        const HTTP2_METHOD_MERGE: string;
 | 
					 | 
				
			||||||
        const HTTP2_METHOD_MKACTIVITY: string;
 | 
					 | 
				
			||||||
        const HTTP2_METHOD_MKCALENDAR: string;
 | 
					 | 
				
			||||||
        const HTTP2_METHOD_MKCOL: string;
 | 
					 | 
				
			||||||
        const HTTP2_METHOD_MKREDIRECTREF: string;
 | 
					 | 
				
			||||||
        const HTTP2_METHOD_MKWORKSPACE: string;
 | 
					 | 
				
			||||||
        const HTTP2_METHOD_MOVE: string;
 | 
					 | 
				
			||||||
        const HTTP2_METHOD_OPTIONS: string;
 | 
					 | 
				
			||||||
        const HTTP2_METHOD_ORDERPATCH: string;
 | 
					 | 
				
			||||||
        const HTTP2_METHOD_PATCH: string;
 | 
					 | 
				
			||||||
        const HTTP2_METHOD_POST: string;
 | 
					 | 
				
			||||||
        const HTTP2_METHOD_PRI: string;
 | 
					 | 
				
			||||||
        const HTTP2_METHOD_PROPFIND: string;
 | 
					 | 
				
			||||||
        const HTTP2_METHOD_PROPPATCH: string;
 | 
					 | 
				
			||||||
        const HTTP2_METHOD_PUT: string;
 | 
					 | 
				
			||||||
        const HTTP2_METHOD_REBIND: string;
 | 
					 | 
				
			||||||
        const HTTP2_METHOD_REPORT: string;
 | 
					 | 
				
			||||||
        const HTTP2_METHOD_SEARCH: string;
 | 
					 | 
				
			||||||
        const HTTP2_METHOD_TRACE: string;
 | 
					 | 
				
			||||||
        const HTTP2_METHOD_UNBIND: string;
 | 
					 | 
				
			||||||
        const HTTP2_METHOD_UNCHECKOUT: string;
 | 
					 | 
				
			||||||
        const HTTP2_METHOD_UNLINK: string;
 | 
					 | 
				
			||||||
        const HTTP2_METHOD_UNLOCK: string;
 | 
					 | 
				
			||||||
        const HTTP2_METHOD_UPDATE: string;
 | 
					 | 
				
			||||||
        const HTTP2_METHOD_UPDATEREDIRECTREF: string;
 | 
					 | 
				
			||||||
        const HTTP2_METHOD_VERSION_CONTROL: string;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_CONTINUE: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_SWITCHING_PROTOCOLS: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_PROCESSING: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_OK: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_CREATED: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_ACCEPTED: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_NON_AUTHORITATIVE_INFORMATION: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_NO_CONTENT: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_RESET_CONTENT: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_PARTIAL_CONTENT: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_MULTI_STATUS: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_ALREADY_REPORTED: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_IM_USED: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_MULTIPLE_CHOICES: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_MOVED_PERMANENTLY: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_FOUND: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_SEE_OTHER: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_NOT_MODIFIED: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_USE_PROXY: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_TEMPORARY_REDIRECT: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_PERMANENT_REDIRECT: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_BAD_REQUEST: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_UNAUTHORIZED: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_PAYMENT_REQUIRED: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_FORBIDDEN: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_NOT_FOUND: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_METHOD_NOT_ALLOWED: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_NOT_ACCEPTABLE: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_PROXY_AUTHENTICATION_REQUIRED: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_REQUEST_TIMEOUT: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_CONFLICT: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_GONE: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_LENGTH_REQUIRED: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_PRECONDITION_FAILED: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_PAYLOAD_TOO_LARGE: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_URI_TOO_LONG: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_UNSUPPORTED_MEDIA_TYPE: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_RANGE_NOT_SATISFIABLE: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_EXPECTATION_FAILED: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_TEAPOT: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_MISDIRECTED_REQUEST: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_UNPROCESSABLE_ENTITY: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_LOCKED: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_FAILED_DEPENDENCY: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_UNORDERED_COLLECTION: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_UPGRADE_REQUIRED: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_PRECONDITION_REQUIRED: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_TOO_MANY_REQUESTS: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_REQUEST_HEADER_FIELDS_TOO_LARGE: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_UNAVAILABLE_FOR_LEGAL_REASONS: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_INTERNAL_SERVER_ERROR: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_NOT_IMPLEMENTED: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_BAD_GATEWAY: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_SERVICE_UNAVAILABLE: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_GATEWAY_TIMEOUT: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_HTTP_VERSION_NOT_SUPPORTED: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_VARIANT_ALSO_NEGOTIATES: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_INSUFFICIENT_STORAGE: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_LOOP_DETECTED: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_BANDWIDTH_LIMIT_EXCEEDED: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_NOT_EXTENDED: number;
 | 
					 | 
				
			||||||
        const HTTP_STATUS_NETWORK_AUTHENTICATION_REQUIRED: number;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    export function getDefaultSettings(): Settings;
 | 
					 | 
				
			||||||
    export function getPackedSettings(settings: Settings): Buffer;
 | 
					 | 
				
			||||||
    export function getUnpackedSettings(buf: Buffer | Uint8Array): Settings;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    export function createServer(onRequestHandler?: (request: Http2ServerRequest, response: Http2ServerResponse) => void): Http2Server;
 | 
					 | 
				
			||||||
    export function createServer(options: ServerOptions, onRequestHandler?: (request: Http2ServerRequest, response: Http2ServerResponse) => void): Http2Server;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    export function createSecureServer(onRequestHandler?: (request: Http2ServerRequest, response: Http2ServerResponse) => void): Http2SecureServer;
 | 
					 | 
				
			||||||
    export function createSecureServer(options: SecureServerOptions, onRequestHandler?: (request: Http2ServerRequest, response: Http2ServerResponse) => void): Http2SecureServer;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    export function connect(authority: string | url.URL, listener?: (session: ClientHttp2Session, socket: net.Socket | tls.TLSSocket) => void): ClientHttp2Session;
 | 
					 | 
				
			||||||
    export function connect(
 | 
					 | 
				
			||||||
        authority: string | url.URL,
 | 
					 | 
				
			||||||
        options?: ClientSessionOptions | SecureClientSessionOptions,
 | 
					 | 
				
			||||||
        listener?: (session: ClientHttp2Session, socket: net.Socket | tls.TLSSocket) => void,
 | 
					 | 
				
			||||||
    ): ClientHttp2Session;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										53
									
								
								node_modules/@types/node/https.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										53
									
								
								node_modules/@types/node/https.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,53 +0,0 @@
 | 
				
			|||||||
declare module "https" {
 | 
					 | 
				
			||||||
    import * as tls from "tls";
 | 
					 | 
				
			||||||
    import * as events from "events";
 | 
					 | 
				
			||||||
    import * as http from "http";
 | 
					 | 
				
			||||||
    import { URL } from "url";
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    type ServerOptions = tls.SecureContextOptions & tls.TlsOptions & http.ServerOptions;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    type RequestOptions = http.RequestOptions & tls.SecureContextOptions & {
 | 
					 | 
				
			||||||
        rejectUnauthorized?: boolean; // Defaults to true
 | 
					 | 
				
			||||||
        servername?: string; // SNI TLS Extension
 | 
					 | 
				
			||||||
    };
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface AgentOptions extends http.AgentOptions, tls.ConnectionOptions {
 | 
					 | 
				
			||||||
        rejectUnauthorized?: boolean;
 | 
					 | 
				
			||||||
        maxCachedSessions?: number;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    class Agent extends http.Agent {
 | 
					 | 
				
			||||||
        constructor(options?: AgentOptions);
 | 
					 | 
				
			||||||
        options: AgentOptions;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    class Server extends tls.Server {
 | 
					 | 
				
			||||||
        constructor(requestListener?: http.RequestListener);
 | 
					 | 
				
			||||||
        constructor(options: ServerOptions, requestListener?: http.RequestListener);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        setTimeout(callback: () => void): this;
 | 
					 | 
				
			||||||
        setTimeout(msecs?: number, callback?: () => void): this;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Limits maximum incoming headers count. If set to 0, no limit will be applied.
 | 
					 | 
				
			||||||
         * @default 2000
 | 
					 | 
				
			||||||
         * {@link https://nodejs.org/api/http.html#http_server_maxheaderscount}
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        maxHeadersCount: number | null;
 | 
					 | 
				
			||||||
        timeout: number;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Limit the amount of time the parser will wait to receive the complete HTTP headers.
 | 
					 | 
				
			||||||
         * @default 40000
 | 
					 | 
				
			||||||
         * {@link https://nodejs.org/api/http.html#http_server_headerstimeout}
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        headersTimeout: number;
 | 
					 | 
				
			||||||
        keepAliveTimeout: number;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function createServer(requestListener?: http.RequestListener): Server;
 | 
					 | 
				
			||||||
    function createServer(options: ServerOptions, requestListener?: http.RequestListener): Server;
 | 
					 | 
				
			||||||
    function request(options: RequestOptions | string | URL, callback?: (res: http.IncomingMessage) => void): http.ClientRequest;
 | 
					 | 
				
			||||||
    function request(url: string | URL, options: RequestOptions, callback?: (res: http.IncomingMessage) => void): http.ClientRequest;
 | 
					 | 
				
			||||||
    function get(options: RequestOptions | string | URL, callback?: (res: http.IncomingMessage) => void): http.ClientRequest;
 | 
					 | 
				
			||||||
    function get(url: string | URL, options: RequestOptions, callback?: (res: http.IncomingMessage) => void): http.ClientRequest;
 | 
					 | 
				
			||||||
    let globalAgent: Agent;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										99
									
								
								node_modules/@types/node/index.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										99
									
								
								node_modules/@types/node/index.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,99 +0,0 @@
 | 
				
			|||||||
// Type definitions for non-npm package Node.js 12.0
 | 
					 | 
				
			||||||
// Project: http://nodejs.org/
 | 
					 | 
				
			||||||
// Definitions by: Microsoft TypeScript <https://github.com/Microsoft>
 | 
					 | 
				
			||||||
//                 DefinitelyTyped <https://github.com/DefinitelyTyped>
 | 
					 | 
				
			||||||
//                 Alberto Schiabel <https://github.com/jkomyno>
 | 
					 | 
				
			||||||
//                 Alexander T. <https://github.com/a-tarasyuk>
 | 
					 | 
				
			||||||
//                 Alvis HT Tang <https://github.com/alvis>
 | 
					 | 
				
			||||||
//                 Andrew Makarov <https://github.com/r3nya>
 | 
					 | 
				
			||||||
//                 Benjamin Toueg <https://github.com/btoueg>
 | 
					 | 
				
			||||||
//                 Bruno Scheufler <https://github.com/brunoscheufler>
 | 
					 | 
				
			||||||
//                 Chigozirim C. <https://github.com/smac89>
 | 
					 | 
				
			||||||
//                 Christian Vaagland Tellnes <https://github.com/tellnes>
 | 
					 | 
				
			||||||
//                 David Junger <https://github.com/touffy>
 | 
					 | 
				
			||||||
//                 Deividas Bakanas <https://github.com/DeividasBakanas>
 | 
					 | 
				
			||||||
//                 Eugene Y. Q. Shen <https://github.com/eyqs>
 | 
					 | 
				
			||||||
//                 Flarna <https://github.com/Flarna>
 | 
					 | 
				
			||||||
//                 Hannes Magnusson <https://github.com/Hannes-Magnusson-CK>
 | 
					 | 
				
			||||||
//                 Hoàng Văn Khải <https://github.com/KSXGitHub>
 | 
					 | 
				
			||||||
//                 Huw <https://github.com/hoo29>
 | 
					 | 
				
			||||||
//                 Kelvin Jin <https://github.com/kjin>
 | 
					 | 
				
			||||||
//                 Klaus Meinhardt <https://github.com/ajafff>
 | 
					 | 
				
			||||||
//                 Lishude <https://github.com/islishude>
 | 
					 | 
				
			||||||
//                 Mariusz Wiktorczyk <https://github.com/mwiktorczyk>
 | 
					 | 
				
			||||||
//                 Matthieu Sieben <https://github.com/matthieusieben>
 | 
					 | 
				
			||||||
//                 Mohsen Azimi <https://github.com/mohsen1>
 | 
					 | 
				
			||||||
//                 Nicolas Even <https://github.com/n-e>
 | 
					 | 
				
			||||||
//                 Nicolas Voigt <https://github.com/octo-sniffle>
 | 
					 | 
				
			||||||
//                 Parambir Singh <https://github.com/parambirs>
 | 
					 | 
				
			||||||
//                 Sebastian Silbermann <https://github.com/eps1lon>
 | 
					 | 
				
			||||||
//                 Simon Schick <https://github.com/SimonSchick>
 | 
					 | 
				
			||||||
//                 Thomas den Hollander <https://github.com/ThomasdenH>
 | 
					 | 
				
			||||||
//                 Wilco Bakker <https://github.com/WilcoBakker>
 | 
					 | 
				
			||||||
//                 wwwy3y3 <https://github.com/wwwy3y3>
 | 
					 | 
				
			||||||
//                 Zane Hannan AU <https://github.com/ZaneHannanAU>
 | 
					 | 
				
			||||||
//                 Jeremie Rodriguez <https://github.com/jeremiergz>
 | 
					 | 
				
			||||||
//                 Samuel Ainsworth <https://github.com/samuela>
 | 
					 | 
				
			||||||
//                 Kyle Uehlein <https://github.com/kuehlein>
 | 
					 | 
				
			||||||
//                 Jordi Oliveras Rovira <https://github.com/j-oliveras>
 | 
					 | 
				
			||||||
//                 Thanik Bhongbhibhat <https://github.com/bhongy>
 | 
					 | 
				
			||||||
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// NOTE: These definitions support NodeJS and TypeScript 3.2.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// NOTE: TypeScript version-specific augmentations can be found in the following paths:
 | 
					 | 
				
			||||||
//          - ~/base.d.ts         - Shared definitions common to all TypeScript versions
 | 
					 | 
				
			||||||
//          - ~/index.d.ts        - Definitions specific to TypeScript 2.1
 | 
					 | 
				
			||||||
//          - ~/ts3.2/index.d.ts  - Definitions specific to TypeScript 3.2
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// NOTE: Augmentations for TypeScript 3.2 and later should use individual files for overrides
 | 
					 | 
				
			||||||
//       within the respective ~/ts3.2 (or later) folder. However, this is disallowed for versions
 | 
					 | 
				
			||||||
//       prior to TypeScript 3.2, so the older definitions will be found here.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// Base definitions for all NodeJS modules that are not specific to any version of TypeScript:
 | 
					 | 
				
			||||||
/// <reference path="base.d.ts" />
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// TypeScript 2.1-specific augmentations:
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// Forward-declarations for needed types from es2015 and later (in case users are using `--lib es5`)
 | 
					 | 
				
			||||||
// Empty interfaces are used here which merge fine with the real declarations in the lib XXX files
 | 
					 | 
				
			||||||
// just to ensure the names are known and node typings can be sued without importing these libs.
 | 
					 | 
				
			||||||
// if someone really needs these types the libs need to be added via --lib or in tsconfig.json
 | 
					 | 
				
			||||||
interface MapConstructor { }
 | 
					 | 
				
			||||||
interface WeakMapConstructor { }
 | 
					 | 
				
			||||||
interface SetConstructor { }
 | 
					 | 
				
			||||||
interface WeakSetConstructor { }
 | 
					 | 
				
			||||||
interface Set<T> {}
 | 
					 | 
				
			||||||
interface Map<K, V> {}
 | 
					 | 
				
			||||||
interface ReadonlySet<T> {}
 | 
					 | 
				
			||||||
interface IteratorResult<T> { }
 | 
					 | 
				
			||||||
interface Iterable<T> { }
 | 
					 | 
				
			||||||
interface Iterator<T> {
 | 
					 | 
				
			||||||
    next(value?: any): IteratorResult<T>;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
interface IterableIterator<T> { }
 | 
					 | 
				
			||||||
interface AsyncIterableIterator<T> {}
 | 
					 | 
				
			||||||
interface SymbolConstructor {
 | 
					 | 
				
			||||||
    readonly iterator: symbol;
 | 
					 | 
				
			||||||
    readonly asyncIterator: symbol;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
declare var Symbol: SymbolConstructor;
 | 
					 | 
				
			||||||
// even this is just a forward declaration some properties are added otherwise
 | 
					 | 
				
			||||||
// it would be allowed to pass anything to e.g. Buffer.from()
 | 
					 | 
				
			||||||
interface SharedArrayBuffer {
 | 
					 | 
				
			||||||
    readonly byteLength: number;
 | 
					 | 
				
			||||||
    slice(begin?: number, end?: number): SharedArrayBuffer;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
declare module "util" {
 | 
					 | 
				
			||||||
    namespace inspect {
 | 
					 | 
				
			||||||
        const custom: symbol;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    namespace promisify {
 | 
					 | 
				
			||||||
        const custom: symbol;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    namespace types {
 | 
					 | 
				
			||||||
        function isBigInt64Array(value: any): boolean;
 | 
					 | 
				
			||||||
        function isBigUint64Array(value: any): boolean;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										3257
									
								
								node_modules/@types/node/inspector.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										3257
									
								
								node_modules/@types/node/inspector.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										3
									
								
								node_modules/@types/node/module.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										3
									
								
								node_modules/@types/node/module.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,3 +0,0 @@
 | 
				
			|||||||
declare module "module" {
 | 
					 | 
				
			||||||
    export = NodeJS.Module;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										249
									
								
								node_modules/@types/node/net.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										249
									
								
								node_modules/@types/node/net.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,249 +0,0 @@
 | 
				
			|||||||
declare module "net" {
 | 
					 | 
				
			||||||
    import * as stream from "stream";
 | 
					 | 
				
			||||||
    import * as events from "events";
 | 
					 | 
				
			||||||
    import * as dns from "dns";
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    type LookupFunction = (hostname: string, options: dns.LookupOneOptions, callback: (err: NodeJS.ErrnoException | null, address: string, family: number) => void) => void;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface AddressInfo {
 | 
					 | 
				
			||||||
        address: string;
 | 
					 | 
				
			||||||
        family: string;
 | 
					 | 
				
			||||||
        port: number;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface SocketConstructorOpts {
 | 
					 | 
				
			||||||
        fd?: number;
 | 
					 | 
				
			||||||
        allowHalfOpen?: boolean;
 | 
					 | 
				
			||||||
        readable?: boolean;
 | 
					 | 
				
			||||||
        writable?: boolean;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface TcpSocketConnectOpts {
 | 
					 | 
				
			||||||
        port: number;
 | 
					 | 
				
			||||||
        host?: string;
 | 
					 | 
				
			||||||
        localAddress?: string;
 | 
					 | 
				
			||||||
        localPort?: number;
 | 
					 | 
				
			||||||
        hints?: number;
 | 
					 | 
				
			||||||
        family?: number;
 | 
					 | 
				
			||||||
        lookup?: LookupFunction;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface IpcSocketConnectOpts {
 | 
					 | 
				
			||||||
        path: string;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    type SocketConnectOpts = TcpSocketConnectOpts | IpcSocketConnectOpts;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    class Socket extends stream.Duplex {
 | 
					 | 
				
			||||||
        constructor(options?: SocketConstructorOpts);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        // Extended base methods
 | 
					 | 
				
			||||||
        write(buffer: Buffer | Uint8Array | string, cb?: (err?: Error) => void): boolean;
 | 
					 | 
				
			||||||
        write(str: Buffer | Uint8Array | string, encoding?: string, cb?: (err?: Error) => void): boolean;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        connect(options: SocketConnectOpts, connectionListener?: () => void): this;
 | 
					 | 
				
			||||||
        connect(port: number, host: string, connectionListener?: () => void): this;
 | 
					 | 
				
			||||||
        connect(port: number, connectionListener?: () => void): this;
 | 
					 | 
				
			||||||
        connect(path: string, connectionListener?: () => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        setEncoding(encoding?: string): this;
 | 
					 | 
				
			||||||
        pause(): this;
 | 
					 | 
				
			||||||
        resume(): this;
 | 
					 | 
				
			||||||
        setTimeout(timeout: number, callback?: () => void): this;
 | 
					 | 
				
			||||||
        setNoDelay(noDelay?: boolean): this;
 | 
					 | 
				
			||||||
        setKeepAlive(enable?: boolean, initialDelay?: number): this;
 | 
					 | 
				
			||||||
        address(): AddressInfo | string;
 | 
					 | 
				
			||||||
        unref(): void;
 | 
					 | 
				
			||||||
        ref(): void;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        readonly bufferSize: number;
 | 
					 | 
				
			||||||
        readonly bytesRead: number;
 | 
					 | 
				
			||||||
        readonly bytesWritten: number;
 | 
					 | 
				
			||||||
        readonly connecting: boolean;
 | 
					 | 
				
			||||||
        readonly destroyed: boolean;
 | 
					 | 
				
			||||||
        readonly localAddress: string;
 | 
					 | 
				
			||||||
        readonly localPort: number;
 | 
					 | 
				
			||||||
        readonly remoteAddress?: string;
 | 
					 | 
				
			||||||
        readonly remoteFamily?: string;
 | 
					 | 
				
			||||||
        readonly remotePort?: number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        // Extended base methods
 | 
					 | 
				
			||||||
        end(cb?: () => void): void;
 | 
					 | 
				
			||||||
        end(buffer: Buffer | Uint8Array | string, cb?: () => void): void;
 | 
					 | 
				
			||||||
        end(str: Buffer | Uint8Array | string, encoding?: string, cb?: () => void): void;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * events.EventEmitter
 | 
					 | 
				
			||||||
         *   1. close
 | 
					 | 
				
			||||||
         *   2. connect
 | 
					 | 
				
			||||||
         *   3. data
 | 
					 | 
				
			||||||
         *   4. drain
 | 
					 | 
				
			||||||
         *   5. end
 | 
					 | 
				
			||||||
         *   6. error
 | 
					 | 
				
			||||||
         *   7. lookup
 | 
					 | 
				
			||||||
         *   8. timeout
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        addListener(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "close", listener: (had_error: boolean) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "connect", listener: () => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "data", listener: (data: Buffer) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "drain", listener: () => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "end", listener: () => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "lookup", listener: (err: Error, address: string, family: string | number, host: string) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "timeout", listener: () => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        emit(event: string | symbol, ...args: any[]): boolean;
 | 
					 | 
				
			||||||
        emit(event: "close", had_error: boolean): boolean;
 | 
					 | 
				
			||||||
        emit(event: "connect"): boolean;
 | 
					 | 
				
			||||||
        emit(event: "data", data: Buffer): boolean;
 | 
					 | 
				
			||||||
        emit(event: "drain"): boolean;
 | 
					 | 
				
			||||||
        emit(event: "end"): boolean;
 | 
					 | 
				
			||||||
        emit(event: "error", err: Error): boolean;
 | 
					 | 
				
			||||||
        emit(event: "lookup", err: Error, address: string, family: string | number, host: string): boolean;
 | 
					 | 
				
			||||||
        emit(event: "timeout"): boolean;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        on(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        on(event: "close", listener: (had_error: boolean) => void): this;
 | 
					 | 
				
			||||||
        on(event: "connect", listener: () => void): this;
 | 
					 | 
				
			||||||
        on(event: "data", listener: (data: Buffer) => void): this;
 | 
					 | 
				
			||||||
        on(event: "drain", listener: () => void): this;
 | 
					 | 
				
			||||||
        on(event: "end", listener: () => void): this;
 | 
					 | 
				
			||||||
        on(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        on(event: "lookup", listener: (err: Error, address: string, family: string | number, host: string) => void): this;
 | 
					 | 
				
			||||||
        on(event: "timeout", listener: () => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        once(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        once(event: "close", listener: (had_error: boolean) => void): this;
 | 
					 | 
				
			||||||
        once(event: "connect", listener: () => void): this;
 | 
					 | 
				
			||||||
        once(event: "data", listener: (data: Buffer) => void): this;
 | 
					 | 
				
			||||||
        once(event: "drain", listener: () => void): this;
 | 
					 | 
				
			||||||
        once(event: "end", listener: () => void): this;
 | 
					 | 
				
			||||||
        once(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        once(event: "lookup", listener: (err: Error, address: string, family: string | number, host: string) => void): this;
 | 
					 | 
				
			||||||
        once(event: "timeout", listener: () => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        prependListener(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "close", listener: (had_error: boolean) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "connect", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "data", listener: (data: Buffer) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "drain", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "end", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "lookup", listener: (err: Error, address: string, family: string | number, host: string) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "timeout", listener: () => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        prependOnceListener(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "close", listener: (had_error: boolean) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "connect", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "data", listener: (data: Buffer) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "drain", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "end", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "lookup", listener: (err: Error, address: string, family: string | number, host: string) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "timeout", listener: () => void): this;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface ListenOptions {
 | 
					 | 
				
			||||||
        port?: number;
 | 
					 | 
				
			||||||
        host?: string;
 | 
					 | 
				
			||||||
        backlog?: number;
 | 
					 | 
				
			||||||
        path?: string;
 | 
					 | 
				
			||||||
        exclusive?: boolean;
 | 
					 | 
				
			||||||
        readableAll?: boolean;
 | 
					 | 
				
			||||||
        writableAll?: boolean;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * @default false
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        ipv6Only?: boolean;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    // https://github.com/nodejs/node/blob/master/lib/net.js
 | 
					 | 
				
			||||||
    class Server extends events.EventEmitter {
 | 
					 | 
				
			||||||
        constructor(connectionListener?: (socket: Socket) => void);
 | 
					 | 
				
			||||||
        constructor(options?: { allowHalfOpen?: boolean, pauseOnConnect?: boolean }, connectionListener?: (socket: Socket) => void);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        listen(port?: number, hostname?: string, backlog?: number, listeningListener?: () => void): this;
 | 
					 | 
				
			||||||
        listen(port?: number, hostname?: string, listeningListener?: () => void): this;
 | 
					 | 
				
			||||||
        listen(port?: number, backlog?: number, listeningListener?: () => void): this;
 | 
					 | 
				
			||||||
        listen(port?: number, listeningListener?: () => void): this;
 | 
					 | 
				
			||||||
        listen(path: string, backlog?: number, listeningListener?: () => void): this;
 | 
					 | 
				
			||||||
        listen(path: string, listeningListener?: () => void): this;
 | 
					 | 
				
			||||||
        listen(options: ListenOptions, listeningListener?: () => void): this;
 | 
					 | 
				
			||||||
        listen(handle: any, backlog?: number, listeningListener?: () => void): this;
 | 
					 | 
				
			||||||
        listen(handle: any, listeningListener?: () => void): this;
 | 
					 | 
				
			||||||
        close(callback?: (err?: Error) => void): this;
 | 
					 | 
				
			||||||
        address(): AddressInfo | string | null;
 | 
					 | 
				
			||||||
        getConnections(cb: (error: Error | null, count: number) => void): void;
 | 
					 | 
				
			||||||
        ref(): this;
 | 
					 | 
				
			||||||
        unref(): this;
 | 
					 | 
				
			||||||
        maxConnections: number;
 | 
					 | 
				
			||||||
        connections: number;
 | 
					 | 
				
			||||||
        listening: boolean;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * events.EventEmitter
 | 
					 | 
				
			||||||
         *   1. close
 | 
					 | 
				
			||||||
         *   2. connection
 | 
					 | 
				
			||||||
         *   3. error
 | 
					 | 
				
			||||||
         *   4. listening
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        addListener(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "connection", listener: (socket: Socket) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "listening", listener: () => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        emit(event: string | symbol, ...args: any[]): boolean;
 | 
					 | 
				
			||||||
        emit(event: "close"): boolean;
 | 
					 | 
				
			||||||
        emit(event: "connection", socket: Socket): boolean;
 | 
					 | 
				
			||||||
        emit(event: "error", err: Error): boolean;
 | 
					 | 
				
			||||||
        emit(event: "listening"): boolean;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        on(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        on(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
        on(event: "connection", listener: (socket: Socket) => void): this;
 | 
					 | 
				
			||||||
        on(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        on(event: "listening", listener: () => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        once(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        once(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
        once(event: "connection", listener: (socket: Socket) => void): this;
 | 
					 | 
				
			||||||
        once(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        once(event: "listening", listener: () => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        prependListener(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "connection", listener: (socket: Socket) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "listening", listener: () => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        prependOnceListener(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "connection", listener: (socket: Socket) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "listening", listener: () => void): this;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface TcpNetConnectOpts extends TcpSocketConnectOpts, SocketConstructorOpts {
 | 
					 | 
				
			||||||
        timeout?: number;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface IpcNetConnectOpts extends IpcSocketConnectOpts, SocketConstructorOpts {
 | 
					 | 
				
			||||||
        timeout?: number;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    type NetConnectOpts = TcpNetConnectOpts | IpcNetConnectOpts;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function createServer(connectionListener?: (socket: Socket) => void): Server;
 | 
					 | 
				
			||||||
    function createServer(options?: { allowHalfOpen?: boolean, pauseOnConnect?: boolean }, connectionListener?: (socket: Socket) => void): Server;
 | 
					 | 
				
			||||||
    function connect(options: NetConnectOpts, connectionListener?: () => void): Socket;
 | 
					 | 
				
			||||||
    function connect(port: number, host?: string, connectionListener?: () => void): Socket;
 | 
					 | 
				
			||||||
    function connect(path: string, connectionListener?: () => void): Socket;
 | 
					 | 
				
			||||||
    function createConnection(options: NetConnectOpts, connectionListener?: () => void): Socket;
 | 
					 | 
				
			||||||
    function createConnection(port: number, host?: string, connectionListener?: () => void): Socket;
 | 
					 | 
				
			||||||
    function createConnection(path: string, connectionListener?: () => void): Socket;
 | 
					 | 
				
			||||||
    function isIP(input: string): number;
 | 
					 | 
				
			||||||
    function isIPv4(input: string): boolean;
 | 
					 | 
				
			||||||
    function isIPv6(input: string): boolean;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										201
									
								
								node_modules/@types/node/os.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										201
									
								
								node_modules/@types/node/os.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,201 +0,0 @@
 | 
				
			|||||||
declare module "os" {
 | 
					 | 
				
			||||||
    interface CpuInfo {
 | 
					 | 
				
			||||||
        model: string;
 | 
					 | 
				
			||||||
        speed: number;
 | 
					 | 
				
			||||||
        times: {
 | 
					 | 
				
			||||||
            user: number;
 | 
					 | 
				
			||||||
            nice: number;
 | 
					 | 
				
			||||||
            sys: number;
 | 
					 | 
				
			||||||
            idle: number;
 | 
					 | 
				
			||||||
            irq: number;
 | 
					 | 
				
			||||||
        };
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface NetworkInterfaceBase {
 | 
					 | 
				
			||||||
        address: string;
 | 
					 | 
				
			||||||
        netmask: string;
 | 
					 | 
				
			||||||
        mac: string;
 | 
					 | 
				
			||||||
        internal: boolean;
 | 
					 | 
				
			||||||
        cidr: string | null;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface NetworkInterfaceInfoIPv4 extends NetworkInterfaceBase {
 | 
					 | 
				
			||||||
        family: "IPv4";
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface NetworkInterfaceInfoIPv6 extends NetworkInterfaceBase {
 | 
					 | 
				
			||||||
        family: "IPv6";
 | 
					 | 
				
			||||||
        scopeid: number;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface UserInfo<T> {
 | 
					 | 
				
			||||||
        username: T;
 | 
					 | 
				
			||||||
        uid: number;
 | 
					 | 
				
			||||||
        gid: number;
 | 
					 | 
				
			||||||
        shell: T;
 | 
					 | 
				
			||||||
        homedir: T;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    type NetworkInterfaceInfo = NetworkInterfaceInfoIPv4 | NetworkInterfaceInfoIPv6;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function hostname(): string;
 | 
					 | 
				
			||||||
    function loadavg(): number[];
 | 
					 | 
				
			||||||
    function uptime(): number;
 | 
					 | 
				
			||||||
    function freemem(): number;
 | 
					 | 
				
			||||||
    function totalmem(): number;
 | 
					 | 
				
			||||||
    function cpus(): CpuInfo[];
 | 
					 | 
				
			||||||
    function type(): string;
 | 
					 | 
				
			||||||
    function release(): string;
 | 
					 | 
				
			||||||
    function networkInterfaces(): { [index: string]: NetworkInterfaceInfo[] };
 | 
					 | 
				
			||||||
    function homedir(): string;
 | 
					 | 
				
			||||||
    function userInfo(options: { encoding: 'buffer' }): UserInfo<Buffer>;
 | 
					 | 
				
			||||||
    function userInfo(options?: { encoding: string }): UserInfo<string>;
 | 
					 | 
				
			||||||
    const constants: {
 | 
					 | 
				
			||||||
        UV_UDP_REUSEADDR: number;
 | 
					 | 
				
			||||||
        signals: {
 | 
					 | 
				
			||||||
            SIGHUP: number;
 | 
					 | 
				
			||||||
            SIGINT: number;
 | 
					 | 
				
			||||||
            SIGQUIT: number;
 | 
					 | 
				
			||||||
            SIGILL: number;
 | 
					 | 
				
			||||||
            SIGTRAP: number;
 | 
					 | 
				
			||||||
            SIGABRT: number;
 | 
					 | 
				
			||||||
            SIGIOT: number;
 | 
					 | 
				
			||||||
            SIGBUS: number;
 | 
					 | 
				
			||||||
            SIGFPE: number;
 | 
					 | 
				
			||||||
            SIGKILL: number;
 | 
					 | 
				
			||||||
            SIGUSR1: number;
 | 
					 | 
				
			||||||
            SIGSEGV: number;
 | 
					 | 
				
			||||||
            SIGUSR2: number;
 | 
					 | 
				
			||||||
            SIGPIPE: number;
 | 
					 | 
				
			||||||
            SIGALRM: number;
 | 
					 | 
				
			||||||
            SIGTERM: number;
 | 
					 | 
				
			||||||
            SIGCHLD: number;
 | 
					 | 
				
			||||||
            SIGSTKFLT: number;
 | 
					 | 
				
			||||||
            SIGCONT: number;
 | 
					 | 
				
			||||||
            SIGSTOP: number;
 | 
					 | 
				
			||||||
            SIGTSTP: number;
 | 
					 | 
				
			||||||
            SIGTTIN: number;
 | 
					 | 
				
			||||||
            SIGTTOU: number;
 | 
					 | 
				
			||||||
            SIGURG: number;
 | 
					 | 
				
			||||||
            SIGXCPU: number;
 | 
					 | 
				
			||||||
            SIGXFSZ: number;
 | 
					 | 
				
			||||||
            SIGVTALRM: number;
 | 
					 | 
				
			||||||
            SIGPROF: number;
 | 
					 | 
				
			||||||
            SIGWINCH: number;
 | 
					 | 
				
			||||||
            SIGIO: number;
 | 
					 | 
				
			||||||
            SIGPOLL: number;
 | 
					 | 
				
			||||||
            SIGPWR: number;
 | 
					 | 
				
			||||||
            SIGSYS: number;
 | 
					 | 
				
			||||||
            SIGUNUSED: number;
 | 
					 | 
				
			||||||
        };
 | 
					 | 
				
			||||||
        errno: {
 | 
					 | 
				
			||||||
            E2BIG: number;
 | 
					 | 
				
			||||||
            EACCES: number;
 | 
					 | 
				
			||||||
            EADDRINUSE: number;
 | 
					 | 
				
			||||||
            EADDRNOTAVAIL: number;
 | 
					 | 
				
			||||||
            EAFNOSUPPORT: number;
 | 
					 | 
				
			||||||
            EAGAIN: number;
 | 
					 | 
				
			||||||
            EALREADY: number;
 | 
					 | 
				
			||||||
            EBADF: number;
 | 
					 | 
				
			||||||
            EBADMSG: number;
 | 
					 | 
				
			||||||
            EBUSY: number;
 | 
					 | 
				
			||||||
            ECANCELED: number;
 | 
					 | 
				
			||||||
            ECHILD: number;
 | 
					 | 
				
			||||||
            ECONNABORTED: number;
 | 
					 | 
				
			||||||
            ECONNREFUSED: number;
 | 
					 | 
				
			||||||
            ECONNRESET: number;
 | 
					 | 
				
			||||||
            EDEADLK: number;
 | 
					 | 
				
			||||||
            EDESTADDRREQ: number;
 | 
					 | 
				
			||||||
            EDOM: number;
 | 
					 | 
				
			||||||
            EDQUOT: number;
 | 
					 | 
				
			||||||
            EEXIST: number;
 | 
					 | 
				
			||||||
            EFAULT: number;
 | 
					 | 
				
			||||||
            EFBIG: number;
 | 
					 | 
				
			||||||
            EHOSTUNREACH: number;
 | 
					 | 
				
			||||||
            EIDRM: number;
 | 
					 | 
				
			||||||
            EILSEQ: number;
 | 
					 | 
				
			||||||
            EINPROGRESS: number;
 | 
					 | 
				
			||||||
            EINTR: number;
 | 
					 | 
				
			||||||
            EINVAL: number;
 | 
					 | 
				
			||||||
            EIO: number;
 | 
					 | 
				
			||||||
            EISCONN: number;
 | 
					 | 
				
			||||||
            EISDIR: number;
 | 
					 | 
				
			||||||
            ELOOP: number;
 | 
					 | 
				
			||||||
            EMFILE: number;
 | 
					 | 
				
			||||||
            EMLINK: number;
 | 
					 | 
				
			||||||
            EMSGSIZE: number;
 | 
					 | 
				
			||||||
            EMULTIHOP: number;
 | 
					 | 
				
			||||||
            ENAMETOOLONG: number;
 | 
					 | 
				
			||||||
            ENETDOWN: number;
 | 
					 | 
				
			||||||
            ENETRESET: number;
 | 
					 | 
				
			||||||
            ENETUNREACH: number;
 | 
					 | 
				
			||||||
            ENFILE: number;
 | 
					 | 
				
			||||||
            ENOBUFS: number;
 | 
					 | 
				
			||||||
            ENODATA: number;
 | 
					 | 
				
			||||||
            ENODEV: number;
 | 
					 | 
				
			||||||
            ENOENT: number;
 | 
					 | 
				
			||||||
            ENOEXEC: number;
 | 
					 | 
				
			||||||
            ENOLCK: number;
 | 
					 | 
				
			||||||
            ENOLINK: number;
 | 
					 | 
				
			||||||
            ENOMEM: number;
 | 
					 | 
				
			||||||
            ENOMSG: number;
 | 
					 | 
				
			||||||
            ENOPROTOOPT: number;
 | 
					 | 
				
			||||||
            ENOSPC: number;
 | 
					 | 
				
			||||||
            ENOSR: number;
 | 
					 | 
				
			||||||
            ENOSTR: number;
 | 
					 | 
				
			||||||
            ENOSYS: number;
 | 
					 | 
				
			||||||
            ENOTCONN: number;
 | 
					 | 
				
			||||||
            ENOTDIR: number;
 | 
					 | 
				
			||||||
            ENOTEMPTY: number;
 | 
					 | 
				
			||||||
            ENOTSOCK: number;
 | 
					 | 
				
			||||||
            ENOTSUP: number;
 | 
					 | 
				
			||||||
            ENOTTY: number;
 | 
					 | 
				
			||||||
            ENXIO: number;
 | 
					 | 
				
			||||||
            EOPNOTSUPP: number;
 | 
					 | 
				
			||||||
            EOVERFLOW: number;
 | 
					 | 
				
			||||||
            EPERM: number;
 | 
					 | 
				
			||||||
            EPIPE: number;
 | 
					 | 
				
			||||||
            EPROTO: number;
 | 
					 | 
				
			||||||
            EPROTONOSUPPORT: number;
 | 
					 | 
				
			||||||
            EPROTOTYPE: number;
 | 
					 | 
				
			||||||
            ERANGE: number;
 | 
					 | 
				
			||||||
            EROFS: number;
 | 
					 | 
				
			||||||
            ESPIPE: number;
 | 
					 | 
				
			||||||
            ESRCH: number;
 | 
					 | 
				
			||||||
            ESTALE: number;
 | 
					 | 
				
			||||||
            ETIME: number;
 | 
					 | 
				
			||||||
            ETIMEDOUT: number;
 | 
					 | 
				
			||||||
            ETXTBSY: number;
 | 
					 | 
				
			||||||
            EWOULDBLOCK: number;
 | 
					 | 
				
			||||||
            EXDEV: number;
 | 
					 | 
				
			||||||
        };
 | 
					 | 
				
			||||||
        priority: {
 | 
					 | 
				
			||||||
            PRIORITY_LOW: number;
 | 
					 | 
				
			||||||
            PRIORITY_BELOW_NORMAL: number;
 | 
					 | 
				
			||||||
            PRIORITY_NORMAL: number;
 | 
					 | 
				
			||||||
            PRIORITY_ABOVE_NORMAL: number;
 | 
					 | 
				
			||||||
            PRIORITY_HIGH: number;
 | 
					 | 
				
			||||||
            PRIORITY_HIGHEST: number;
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
    };
 | 
					 | 
				
			||||||
    function arch(): string;
 | 
					 | 
				
			||||||
    function platform(): NodeJS.Platform;
 | 
					 | 
				
			||||||
    function tmpdir(): string;
 | 
					 | 
				
			||||||
    const EOL: string;
 | 
					 | 
				
			||||||
    function endianness(): "BE" | "LE";
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * Gets the priority of a process.
 | 
					 | 
				
			||||||
     * Defaults to current process.
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    function getPriority(pid?: number): number;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * Sets the priority of the current process.
 | 
					 | 
				
			||||||
     * @param priority Must be in range of -20 to 19
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    function setPriority(priority: number): void;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * Sets the priority of the process specified process.
 | 
					 | 
				
			||||||
     * @param priority Must be in range of -20 to 19
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    function setPriority(pid: number, priority: number): void;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										205
									
								
								node_modules/@types/node/package.json
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										205
									
								
								node_modules/@types/node/package.json
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,205 +0,0 @@
 | 
				
			|||||||
{
 | 
					 | 
				
			||||||
  "_from": "@types/node",
 | 
					 | 
				
			||||||
  "_id": "@types/node@12.0.7",
 | 
					 | 
				
			||||||
  "_inBundle": false,
 | 
					 | 
				
			||||||
  "_integrity": "sha512-1YKeT4JitGgE4SOzyB9eMwO0nGVNkNEsm9qlIt1Lqm/tG2QEiSMTD4kS3aO6L+w5SClLVxALmIBESK6Mk5wX0A==",
 | 
					 | 
				
			||||||
  "_location": "/@types/node",
 | 
					 | 
				
			||||||
  "_phantomChildren": {},
 | 
					 | 
				
			||||||
  "_requested": {
 | 
					 | 
				
			||||||
    "type": "tag",
 | 
					 | 
				
			||||||
    "registry": true,
 | 
					 | 
				
			||||||
    "raw": "@types/node",
 | 
					 | 
				
			||||||
    "name": "@types/node",
 | 
					 | 
				
			||||||
    "escapedName": "@types%2fnode",
 | 
					 | 
				
			||||||
    "scope": "@types",
 | 
					 | 
				
			||||||
    "rawSpec": "",
 | 
					 | 
				
			||||||
    "saveSpec": null,
 | 
					 | 
				
			||||||
    "fetchSpec": "latest"
 | 
					 | 
				
			||||||
  },
 | 
					 | 
				
			||||||
  "_requiredBy": [
 | 
					 | 
				
			||||||
    "#USER",
 | 
					 | 
				
			||||||
    "/"
 | 
					 | 
				
			||||||
  ],
 | 
					 | 
				
			||||||
  "_resolved": "https://registry.npmjs.org/@types/node/-/node-12.0.7.tgz",
 | 
					 | 
				
			||||||
  "_shasum": "4f2563bad652b2acb1722d7e7aae2b0ff62d192c",
 | 
					 | 
				
			||||||
  "_spec": "@types/node",
 | 
					 | 
				
			||||||
  "_where": "C:\\Users\\matia\\Musix test",
 | 
					 | 
				
			||||||
  "bugs": {
 | 
					 | 
				
			||||||
    "url": "https://github.com/DefinitelyTyped/DefinitelyTyped/issues"
 | 
					 | 
				
			||||||
  },
 | 
					 | 
				
			||||||
  "bundleDependencies": false,
 | 
					 | 
				
			||||||
  "contributors": [
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
      "name": "Microsoft TypeScript",
 | 
					 | 
				
			||||||
      "url": "https://github.com/Microsoft"
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
      "name": "DefinitelyTyped",
 | 
					 | 
				
			||||||
      "url": "https://github.com/DefinitelyTyped"
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
      "name": "Alberto Schiabel",
 | 
					 | 
				
			||||||
      "url": "https://github.com/jkomyno"
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
      "name": "Alexander T.",
 | 
					 | 
				
			||||||
      "url": "https://github.com/a-tarasyuk"
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
      "name": "Alvis HT Tang",
 | 
					 | 
				
			||||||
      "url": "https://github.com/alvis"
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
      "name": "Andrew Makarov",
 | 
					 | 
				
			||||||
      "url": "https://github.com/r3nya"
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
      "name": "Benjamin Toueg",
 | 
					 | 
				
			||||||
      "url": "https://github.com/btoueg"
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
      "name": "Bruno Scheufler",
 | 
					 | 
				
			||||||
      "url": "https://github.com/brunoscheufler"
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
      "name": "Chigozirim C.",
 | 
					 | 
				
			||||||
      "url": "https://github.com/smac89"
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
      "name": "Christian Vaagland Tellnes",
 | 
					 | 
				
			||||||
      "url": "https://github.com/tellnes"
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
      "name": "David Junger",
 | 
					 | 
				
			||||||
      "url": "https://github.com/touffy"
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
      "name": "Deividas Bakanas",
 | 
					 | 
				
			||||||
      "url": "https://github.com/DeividasBakanas"
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
      "name": "Eugene Y. Q. Shen",
 | 
					 | 
				
			||||||
      "url": "https://github.com/eyqs"
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
      "name": "Flarna",
 | 
					 | 
				
			||||||
      "url": "https://github.com/Flarna"
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
      "name": "Hannes Magnusson",
 | 
					 | 
				
			||||||
      "url": "https://github.com/Hannes-Magnusson-CK"
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
      "name": "Hoàng Văn Khải",
 | 
					 | 
				
			||||||
      "url": "https://github.com/KSXGitHub"
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
      "name": "Huw",
 | 
					 | 
				
			||||||
      "url": "https://github.com/hoo29"
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
      "name": "Kelvin Jin",
 | 
					 | 
				
			||||||
      "url": "https://github.com/kjin"
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
      "name": "Klaus Meinhardt",
 | 
					 | 
				
			||||||
      "url": "https://github.com/ajafff"
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
      "name": "Lishude",
 | 
					 | 
				
			||||||
      "url": "https://github.com/islishude"
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
      "name": "Mariusz Wiktorczyk",
 | 
					 | 
				
			||||||
      "url": "https://github.com/mwiktorczyk"
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
      "name": "Matthieu Sieben",
 | 
					 | 
				
			||||||
      "url": "https://github.com/matthieusieben"
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
      "name": "Mohsen Azimi",
 | 
					 | 
				
			||||||
      "url": "https://github.com/mohsen1"
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
      "name": "Nicolas Even",
 | 
					 | 
				
			||||||
      "url": "https://github.com/n-e"
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
      "name": "Nicolas Voigt",
 | 
					 | 
				
			||||||
      "url": "https://github.com/octo-sniffle"
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
      "name": "Parambir Singh",
 | 
					 | 
				
			||||||
      "url": "https://github.com/parambirs"
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
      "name": "Sebastian Silbermann",
 | 
					 | 
				
			||||||
      "url": "https://github.com/eps1lon"
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
      "name": "Simon Schick",
 | 
					 | 
				
			||||||
      "url": "https://github.com/SimonSchick"
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
      "name": "Thomas den Hollander",
 | 
					 | 
				
			||||||
      "url": "https://github.com/ThomasdenH"
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
      "name": "Wilco Bakker",
 | 
					 | 
				
			||||||
      "url": "https://github.com/WilcoBakker"
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
      "name": "wwwy3y3",
 | 
					 | 
				
			||||||
      "url": "https://github.com/wwwy3y3"
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
      "name": "Zane Hannan AU",
 | 
					 | 
				
			||||||
      "url": "https://github.com/ZaneHannanAU"
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
      "name": "Jeremie Rodriguez",
 | 
					 | 
				
			||||||
      "url": "https://github.com/jeremiergz"
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
      "name": "Samuel Ainsworth",
 | 
					 | 
				
			||||||
      "url": "https://github.com/samuela"
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
      "name": "Kyle Uehlein",
 | 
					 | 
				
			||||||
      "url": "https://github.com/kuehlein"
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
      "name": "Jordi Oliveras Rovira",
 | 
					 | 
				
			||||||
      "url": "https://github.com/j-oliveras"
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    {
 | 
					 | 
				
			||||||
      "name": "Thanik Bhongbhibhat",
 | 
					 | 
				
			||||||
      "url": "https://github.com/bhongy"
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
  ],
 | 
					 | 
				
			||||||
  "dependencies": {},
 | 
					 | 
				
			||||||
  "deprecated": false,
 | 
					 | 
				
			||||||
  "description": "TypeScript definitions for Node.js",
 | 
					 | 
				
			||||||
  "homepage": "https://github.com/DefinitelyTyped/DefinitelyTyped#readme",
 | 
					 | 
				
			||||||
  "license": "MIT",
 | 
					 | 
				
			||||||
  "main": "",
 | 
					 | 
				
			||||||
  "name": "@types/node",
 | 
					 | 
				
			||||||
  "repository": {
 | 
					 | 
				
			||||||
    "type": "git",
 | 
					 | 
				
			||||||
    "url": "git+https://github.com/DefinitelyTyped/DefinitelyTyped.git",
 | 
					 | 
				
			||||||
    "directory": "types/node"
 | 
					 | 
				
			||||||
  },
 | 
					 | 
				
			||||||
  "scripts": {},
 | 
					 | 
				
			||||||
  "typeScriptVersion": "2.0",
 | 
					 | 
				
			||||||
  "types": "index",
 | 
					 | 
				
			||||||
  "typesPublisherContentHash": "2043030d9cf3e68db17480b60847159e473c295abfed316add246578fb0ddb0c",
 | 
					 | 
				
			||||||
  "typesVersions": {
 | 
					 | 
				
			||||||
    ">=3.2.0-0": {
 | 
					 | 
				
			||||||
      "*": [
 | 
					 | 
				
			||||||
        "ts3.2/*"
 | 
					 | 
				
			||||||
      ]
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
  },
 | 
					 | 
				
			||||||
  "version": "12.0.7"
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										159
									
								
								node_modules/@types/node/path.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										159
									
								
								node_modules/@types/node/path.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,159 +0,0 @@
 | 
				
			|||||||
declare module "path" {
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * A parsed path object generated by path.parse() or consumed by path.format().
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    interface ParsedPath {
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The root of the path such as '/' or 'c:\'
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        root: string;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The full directory path such as '/home/user/dir' or 'c:\path\dir'
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        dir: string;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The file name including extension (if any) such as 'index.html'
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        base: string;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The file extension (if any) such as '.html'
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        ext: string;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The file name without extension (if any) such as 'index'
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        name: string;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    interface FormatInputPathObject {
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The root of the path such as '/' or 'c:\'
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        root?: string;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The full directory path such as '/home/user/dir' or 'c:\path\dir'
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        dir?: string;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The file name including extension (if any) such as 'index.html'
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        base?: string;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The file extension (if any) such as '.html'
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        ext?: string;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The file name without extension (if any) such as 'index'
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        name?: string;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * Normalize a string path, reducing '..' and '.' parts.
 | 
					 | 
				
			||||||
     * When multiple slashes are found, they're replaced by a single one; when the path contains a trailing slash, it is preserved. On Windows backslashes are used.
 | 
					 | 
				
			||||||
     *
 | 
					 | 
				
			||||||
     * @param p string path to normalize.
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    function normalize(p: string): string;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * Join all arguments together and normalize the resulting path.
 | 
					 | 
				
			||||||
     * Arguments must be strings. In v0.8, non-string arguments were silently ignored. In v0.10 and up, an exception is thrown.
 | 
					 | 
				
			||||||
     *
 | 
					 | 
				
			||||||
     * @param paths paths to join.
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    function join(...paths: string[]): string;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * The right-most parameter is considered {to}.  Other parameters are considered an array of {from}.
 | 
					 | 
				
			||||||
     *
 | 
					 | 
				
			||||||
     * Starting from leftmost {from} parameter, resolves {to} to an absolute path.
 | 
					 | 
				
			||||||
     *
 | 
					 | 
				
			||||||
     * If {to} isn't already absolute, {from} arguments are prepended in right to left order,
 | 
					 | 
				
			||||||
     * until an absolute path is found. If after using all {from} paths still no absolute path is found,
 | 
					 | 
				
			||||||
     * the current working directory is used as well. The resulting path is normalized,
 | 
					 | 
				
			||||||
     * and trailing slashes are removed unless the path gets resolved to the root directory.
 | 
					 | 
				
			||||||
     *
 | 
					 | 
				
			||||||
     * @param pathSegments string paths to join.  Non-string arguments are ignored.
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    function resolve(...pathSegments: string[]): string;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * Determines whether {path} is an absolute path. An absolute path will always resolve to the same location, regardless of the working directory.
 | 
					 | 
				
			||||||
     *
 | 
					 | 
				
			||||||
     * @param path path to test.
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    function isAbsolute(path: string): boolean;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * Solve the relative path from {from} to {to}.
 | 
					 | 
				
			||||||
     * At times we have two absolute paths, and we need to derive the relative path from one to the other. This is actually the reverse transform of path.resolve.
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    function relative(from: string, to: string): string;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * Return the directory name of a path. Similar to the Unix dirname command.
 | 
					 | 
				
			||||||
     *
 | 
					 | 
				
			||||||
     * @param p the path to evaluate.
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    function dirname(p: string): string;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * Return the last portion of a path. Similar to the Unix basename command.
 | 
					 | 
				
			||||||
     * Often used to extract the file name from a fully qualified path.
 | 
					 | 
				
			||||||
     *
 | 
					 | 
				
			||||||
     * @param p the path to evaluate.
 | 
					 | 
				
			||||||
     * @param ext optionally, an extension to remove from the result.
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    function basename(p: string, ext?: string): string;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * Return the extension of the path, from the last '.' to end of string in the last portion of the path.
 | 
					 | 
				
			||||||
     * If there is no '.' in the last portion of the path or the first character of it is '.', then it returns an empty string
 | 
					 | 
				
			||||||
     *
 | 
					 | 
				
			||||||
     * @param p the path to evaluate.
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    function extname(p: string): string;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * The platform-specific file separator. '\\' or '/'.
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    const sep: '\\' | '/';
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * The platform-specific file delimiter. ';' or ':'.
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    const delimiter: ';' | ':';
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * Returns an object from a path string - the opposite of format().
 | 
					 | 
				
			||||||
     *
 | 
					 | 
				
			||||||
     * @param pathString path to evaluate.
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    function parse(pathString: string): ParsedPath;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * Returns a path string from an object - the opposite of parse().
 | 
					 | 
				
			||||||
     *
 | 
					 | 
				
			||||||
     * @param pathString path to evaluate.
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    function format(pathObject: FormatInputPathObject): string;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    namespace posix {
 | 
					 | 
				
			||||||
        function normalize(p: string): string;
 | 
					 | 
				
			||||||
        function join(...paths: string[]): string;
 | 
					 | 
				
			||||||
        function resolve(...pathSegments: string[]): string;
 | 
					 | 
				
			||||||
        function isAbsolute(p: string): boolean;
 | 
					 | 
				
			||||||
        function relative(from: string, to: string): string;
 | 
					 | 
				
			||||||
        function dirname(p: string): string;
 | 
					 | 
				
			||||||
        function basename(p: string, ext?: string): string;
 | 
					 | 
				
			||||||
        function extname(p: string): string;
 | 
					 | 
				
			||||||
        const sep: string;
 | 
					 | 
				
			||||||
        const delimiter: string;
 | 
					 | 
				
			||||||
        function parse(p: string): ParsedPath;
 | 
					 | 
				
			||||||
        function format(pP: FormatInputPathObject): string;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    namespace win32 {
 | 
					 | 
				
			||||||
        function normalize(p: string): string;
 | 
					 | 
				
			||||||
        function join(...paths: string[]): string;
 | 
					 | 
				
			||||||
        function resolve(...pathSegments: string[]): string;
 | 
					 | 
				
			||||||
        function isAbsolute(p: string): boolean;
 | 
					 | 
				
			||||||
        function relative(from: string, to: string): string;
 | 
					 | 
				
			||||||
        function dirname(p: string): string;
 | 
					 | 
				
			||||||
        function basename(p: string, ext?: string): string;
 | 
					 | 
				
			||||||
        function extname(p: string): string;
 | 
					 | 
				
			||||||
        const sep: string;
 | 
					 | 
				
			||||||
        const delimiter: string;
 | 
					 | 
				
			||||||
        function parse(p: string): ParsedPath;
 | 
					 | 
				
			||||||
        function format(pP: FormatInputPathObject): string;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										304
									
								
								node_modules/@types/node/perf_hooks.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										304
									
								
								node_modules/@types/node/perf_hooks.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,304 +0,0 @@
 | 
				
			|||||||
declare module "perf_hooks" {
 | 
					 | 
				
			||||||
    import { AsyncResource } from "async_hooks";
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface PerformanceEntry {
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The total number of milliseconds elapsed for this entry.
 | 
					 | 
				
			||||||
         * This value will not be meaningful for all Performance Entry types.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        readonly duration: number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The name of the performance entry.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        readonly name: string;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The high resolution millisecond timestamp marking the starting time of the Performance Entry.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        readonly startTime: number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The type of the performance entry.
 | 
					 | 
				
			||||||
         * Currently it may be one of: 'node', 'mark', 'measure', 'gc', or 'function'.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        readonly entryType: string;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * When performanceEntry.entryType is equal to 'gc', the performance.kind property identifies
 | 
					 | 
				
			||||||
         * the type of garbage collection operation that occurred.
 | 
					 | 
				
			||||||
         * The value may be one of perf_hooks.constants.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        readonly kind?: number;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface PerformanceNodeTiming extends PerformanceEntry {
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The high resolution millisecond timestamp at which the Node.js process completed bootstrap.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        readonly bootstrapComplete: number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The high resolution millisecond timestamp at which cluster processing ended.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        readonly clusterSetupEnd: number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The high resolution millisecond timestamp at which cluster processing started.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        readonly clusterSetupStart: number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The high resolution millisecond timestamp at which the Node.js event loop exited.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        readonly loopExit: number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The high resolution millisecond timestamp at which the Node.js event loop started.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        readonly loopStart: number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The high resolution millisecond timestamp at which main module load ended.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        readonly moduleLoadEnd: number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The high resolution millisecond timestamp at which main module load started.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        readonly moduleLoadStart: number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The high resolution millisecond timestamp at which the Node.js process was initialized.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        readonly nodeStart: number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The high resolution millisecond timestamp at which preload module load ended.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        readonly preloadModuleLoadEnd: number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The high resolution millisecond timestamp at which preload module load started.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        readonly preloadModuleLoadStart: number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The high resolution millisecond timestamp at which third_party_main processing ended.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        readonly thirdPartyMainEnd: number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The high resolution millisecond timestamp at which third_party_main processing started.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        readonly thirdPartyMainStart: number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The high resolution millisecond timestamp at which the V8 platform was initialized.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        readonly v8Start: number;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface Performance {
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * If name is not provided, removes all PerformanceFunction objects from the Performance Timeline.
 | 
					 | 
				
			||||||
         * If name is provided, removes entries with name.
 | 
					 | 
				
			||||||
         * @param name
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        clearFunctions(name?: string): void;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * If name is not provided, removes all PerformanceMark objects from the Performance Timeline.
 | 
					 | 
				
			||||||
         * If name is provided, removes only the named mark.
 | 
					 | 
				
			||||||
         * @param name
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        clearMarks(name?: string): void;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * If name is not provided, removes all PerformanceMeasure objects from the Performance Timeline.
 | 
					 | 
				
			||||||
         * If name is provided, removes only objects whose performanceEntry.name matches name.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        clearMeasures(name?: string): void;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Returns a list of all PerformanceEntry objects in chronological order with respect to performanceEntry.startTime.
 | 
					 | 
				
			||||||
         * @return list of all PerformanceEntry objects
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        getEntries(): PerformanceEntry[];
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Returns a list of all PerformanceEntry objects in chronological order with respect to performanceEntry.startTime
 | 
					 | 
				
			||||||
         * whose performanceEntry.name is equal to name, and optionally, whose performanceEntry.entryType is equal to type.
 | 
					 | 
				
			||||||
         * @param name
 | 
					 | 
				
			||||||
         * @param type
 | 
					 | 
				
			||||||
         * @return list of all PerformanceEntry objects
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        getEntriesByName(name: string, type?: string): PerformanceEntry[];
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Returns a list of all PerformanceEntry objects in chronological order with respect to performanceEntry.startTime
 | 
					 | 
				
			||||||
         * whose performanceEntry.entryType is equal to type.
 | 
					 | 
				
			||||||
         * @param type
 | 
					 | 
				
			||||||
         * @return list of all PerformanceEntry objects
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        getEntriesByType(type: string): PerformanceEntry[];
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Creates a new PerformanceMark entry in the Performance Timeline.
 | 
					 | 
				
			||||||
         * A PerformanceMark is a subclass of PerformanceEntry whose performanceEntry.entryType is always 'mark',
 | 
					 | 
				
			||||||
         * and whose performanceEntry.duration is always 0.
 | 
					 | 
				
			||||||
         * Performance marks are used to mark specific significant moments in the Performance Timeline.
 | 
					 | 
				
			||||||
         * @param name
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        mark(name?: string): void;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Creates a new PerformanceMeasure entry in the Performance Timeline.
 | 
					 | 
				
			||||||
         * A PerformanceMeasure is a subclass of PerformanceEntry whose performanceEntry.entryType is always 'measure',
 | 
					 | 
				
			||||||
         * and whose performanceEntry.duration measures the number of milliseconds elapsed since startMark and endMark.
 | 
					 | 
				
			||||||
         *
 | 
					 | 
				
			||||||
         * The startMark argument may identify any existing PerformanceMark in the the Performance Timeline, or may identify
 | 
					 | 
				
			||||||
         * any of the timestamp properties provided by the PerformanceNodeTiming class. If the named startMark does not exist,
 | 
					 | 
				
			||||||
         * then startMark is set to timeOrigin by default.
 | 
					 | 
				
			||||||
         *
 | 
					 | 
				
			||||||
         * The endMark argument must identify any existing PerformanceMark in the the Performance Timeline or any of the timestamp
 | 
					 | 
				
			||||||
         * properties provided by the PerformanceNodeTiming class. If the named endMark does not exist, an error will be thrown.
 | 
					 | 
				
			||||||
         * @param name
 | 
					 | 
				
			||||||
         * @param startMark
 | 
					 | 
				
			||||||
         * @param endMark
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        measure(name: string, startMark: string, endMark: string): void;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * An instance of the PerformanceNodeTiming class that provides performance metrics for specific Node.js operational milestones.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        readonly nodeTiming: PerformanceNodeTiming;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * @return the current high resolution millisecond timestamp
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        now(): number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The timeOrigin specifies the high resolution millisecond timestamp from which all performance metric durations are measured.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        readonly timeOrigin: number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Wraps a function within a new function that measures the running time of the wrapped function.
 | 
					 | 
				
			||||||
         * A PerformanceObserver must be subscribed to the 'function' event type in order for the timing details to be accessed.
 | 
					 | 
				
			||||||
         * @param fn
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        timerify<T extends (...optionalParams: any[]) => any>(fn: T): T;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface PerformanceObserverEntryList {
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * @return a list of PerformanceEntry objects in chronological order with respect to performanceEntry.startTime.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        getEntries(): PerformanceEntry[];
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * @return a list of PerformanceEntry objects in chronological order with respect to performanceEntry.startTime
 | 
					 | 
				
			||||||
         * whose performanceEntry.name is equal to name, and optionally, whose performanceEntry.entryType is equal to type.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        getEntriesByName(name: string, type?: string): PerformanceEntry[];
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * @return Returns a list of PerformanceEntry objects in chronological order with respect to performanceEntry.startTime
 | 
					 | 
				
			||||||
         * whose performanceEntry.entryType is equal to type.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        getEntriesByType(type: string): PerformanceEntry[];
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    type PerformanceObserverCallback = (list: PerformanceObserverEntryList, observer: PerformanceObserver) => void;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    class PerformanceObserver extends AsyncResource {
 | 
					 | 
				
			||||||
        constructor(callback: PerformanceObserverCallback);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Disconnects the PerformanceObserver instance from all notifications.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        disconnect(): void;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Subscribes the PerformanceObserver instance to notifications of new PerformanceEntry instances identified by options.entryTypes.
 | 
					 | 
				
			||||||
         * When options.buffered is false, the callback will be invoked once for every PerformanceEntry instance.
 | 
					 | 
				
			||||||
         * Property buffered defaults to false.
 | 
					 | 
				
			||||||
         * @param options
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        observe(options: { entryTypes: string[], buffered?: boolean }): void;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    namespace constants {
 | 
					 | 
				
			||||||
        const NODE_PERFORMANCE_GC_MAJOR: number;
 | 
					 | 
				
			||||||
        const NODE_PERFORMANCE_GC_MINOR: number;
 | 
					 | 
				
			||||||
        const NODE_PERFORMANCE_GC_INCREMENTAL: number;
 | 
					 | 
				
			||||||
        const NODE_PERFORMANCE_GC_WEAKCB: number;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    const performance: Performance;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface EventLoopMonitorOptions {
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The sampling rate in milliseconds.
 | 
					 | 
				
			||||||
         * Must be greater than zero.
 | 
					 | 
				
			||||||
         * @default 10
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        resolution?: number;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface EventLoopDelayMonitor {
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Enables the event loop delay sample timer. Returns `true` if the timer was started, `false` if it was already started.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        enable(): boolean;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Disables the event loop delay sample timer. Returns `true` if the timer was stopped, `false` if it was already stopped.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        disable(): boolean;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Resets the collected histogram data.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        reset(): void;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Returns the value at the given percentile.
 | 
					 | 
				
			||||||
         * @param percentile A percentile value between 1 and 100.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        percentile(percentile: number): number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * A `Map` object detailing the accumulated percentile distribution.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        readonly percentiles: Map<number, number>;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The number of times the event loop delay exceeded the maximum 1 hour eventloop delay threshold.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        readonly exceeds: number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The minimum recorded event loop delay.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        readonly min: number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The maximum recorded event loop delay.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        readonly max: number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The mean of the recorded event loop delays.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        readonly mean: number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The standard deviation of the recorded event loop delays.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        readonly stddev: number;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function monitorEventLoopDelay(options?: EventLoopMonitorOptions): EventLoopDelayMonitor;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										3
									
								
								node_modules/@types/node/process.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										3
									
								
								node_modules/@types/node/process.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,3 +0,0 @@
 | 
				
			|||||||
declare module "process" {
 | 
					 | 
				
			||||||
    export = process;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										12
									
								
								node_modules/@types/node/punycode.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										12
									
								
								node_modules/@types/node/punycode.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,12 +0,0 @@
 | 
				
			|||||||
declare module "punycode" {
 | 
					 | 
				
			||||||
    function decode(string: string): string;
 | 
					 | 
				
			||||||
    function encode(string: string): string;
 | 
					 | 
				
			||||||
    function toUnicode(domain: string): string;
 | 
					 | 
				
			||||||
    function toASCII(domain: string): string;
 | 
					 | 
				
			||||||
    const ucs2: ucs2;
 | 
					 | 
				
			||||||
    interface ucs2 {
 | 
					 | 
				
			||||||
        decode(string: string): number[];
 | 
					 | 
				
			||||||
        encode(codePoints: number[]): string;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    const version: string;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										32
									
								
								node_modules/@types/node/querystring.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										32
									
								
								node_modules/@types/node/querystring.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,32 +0,0 @@
 | 
				
			|||||||
declare module "querystring" {
 | 
					 | 
				
			||||||
    interface StringifyOptions {
 | 
					 | 
				
			||||||
        encodeURIComponent?: (str: string) => string;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface ParseOptions {
 | 
					 | 
				
			||||||
        maxKeys?: number;
 | 
					 | 
				
			||||||
        decodeURIComponent?: (str: string) => string;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface ParsedUrlQuery { [key: string]: string | string[]; }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface ParsedUrlQueryInput {
 | 
					 | 
				
			||||||
        [key: string]:
 | 
					 | 
				
			||||||
        // The value type here is a "poor man's `unknown`". When these types support TypeScript
 | 
					 | 
				
			||||||
        // 3.0+, we can replace this with `unknown`.
 | 
					 | 
				
			||||||
        {} | null | undefined;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function stringify(obj?: ParsedUrlQueryInput, sep?: string, eq?: string, options?: StringifyOptions): string;
 | 
					 | 
				
			||||||
    function parse(str: string, sep?: string, eq?: string, options?: ParseOptions): ParsedUrlQuery;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * The querystring.encode() function is an alias for querystring.stringify().
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    const encode: typeof stringify;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * The querystring.decode() function is an alias for querystring.parse().
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    const decode: typeof parse;
 | 
					 | 
				
			||||||
    function escape(str: string): string;
 | 
					 | 
				
			||||||
    function unescape(str: string): string;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										136
									
								
								node_modules/@types/node/readline.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										136
									
								
								node_modules/@types/node/readline.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,136 +0,0 @@
 | 
				
			|||||||
declare module "readline" {
 | 
					 | 
				
			||||||
    import * as events from "events";
 | 
					 | 
				
			||||||
    import * as stream from "stream";
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface Key {
 | 
					 | 
				
			||||||
        sequence?: string;
 | 
					 | 
				
			||||||
        name?: string;
 | 
					 | 
				
			||||||
        ctrl?: boolean;
 | 
					 | 
				
			||||||
        meta?: boolean;
 | 
					 | 
				
			||||||
        shift?: boolean;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    class Interface extends events.EventEmitter {
 | 
					 | 
				
			||||||
        readonly terminal: boolean;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * NOTE: According to the documentation:
 | 
					 | 
				
			||||||
         *
 | 
					 | 
				
			||||||
         * > Instances of the `readline.Interface` class are constructed using the
 | 
					 | 
				
			||||||
         * > `readline.createInterface()` method.
 | 
					 | 
				
			||||||
         *
 | 
					 | 
				
			||||||
         * @see https://nodejs.org/dist/latest-v10.x/docs/api/readline.html#readline_class_interface
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        protected constructor(input: NodeJS.ReadableStream, output?: NodeJS.WritableStream, completer?: Completer | AsyncCompleter, terminal?: boolean);
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * NOTE: According to the documentation:
 | 
					 | 
				
			||||||
         *
 | 
					 | 
				
			||||||
         * > Instances of the `readline.Interface` class are constructed using the
 | 
					 | 
				
			||||||
         * > `readline.createInterface()` method.
 | 
					 | 
				
			||||||
         *
 | 
					 | 
				
			||||||
         * @see https://nodejs.org/dist/latest-v10.x/docs/api/readline.html#readline_class_interface
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        protected constructor(options: ReadLineOptions);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        setPrompt(prompt: string): void;
 | 
					 | 
				
			||||||
        prompt(preserveCursor?: boolean): void;
 | 
					 | 
				
			||||||
        question(query: string, callback: (answer: string) => void): void;
 | 
					 | 
				
			||||||
        pause(): this;
 | 
					 | 
				
			||||||
        resume(): this;
 | 
					 | 
				
			||||||
        close(): void;
 | 
					 | 
				
			||||||
        write(data: string | Buffer, key?: Key): void;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * events.EventEmitter
 | 
					 | 
				
			||||||
         * 1. close
 | 
					 | 
				
			||||||
         * 2. line
 | 
					 | 
				
			||||||
         * 3. pause
 | 
					 | 
				
			||||||
         * 4. resume
 | 
					 | 
				
			||||||
         * 5. SIGCONT
 | 
					 | 
				
			||||||
         * 6. SIGINT
 | 
					 | 
				
			||||||
         * 7. SIGTSTP
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        addListener(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "line", listener: (input: string) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "pause", listener: () => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "resume", listener: () => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "SIGCONT", listener: () => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "SIGINT", listener: () => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "SIGTSTP", listener: () => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        emit(event: string | symbol, ...args: any[]): boolean;
 | 
					 | 
				
			||||||
        emit(event: "close"): boolean;
 | 
					 | 
				
			||||||
        emit(event: "line", input: string): boolean;
 | 
					 | 
				
			||||||
        emit(event: "pause"): boolean;
 | 
					 | 
				
			||||||
        emit(event: "resume"): boolean;
 | 
					 | 
				
			||||||
        emit(event: "SIGCONT"): boolean;
 | 
					 | 
				
			||||||
        emit(event: "SIGINT"): boolean;
 | 
					 | 
				
			||||||
        emit(event: "SIGTSTP"): boolean;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        on(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        on(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
        on(event: "line", listener: (input: string) => void): this;
 | 
					 | 
				
			||||||
        on(event: "pause", listener: () => void): this;
 | 
					 | 
				
			||||||
        on(event: "resume", listener: () => void): this;
 | 
					 | 
				
			||||||
        on(event: "SIGCONT", listener: () => void): this;
 | 
					 | 
				
			||||||
        on(event: "SIGINT", listener: () => void): this;
 | 
					 | 
				
			||||||
        on(event: "SIGTSTP", listener: () => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        once(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        once(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
        once(event: "line", listener: (input: string) => void): this;
 | 
					 | 
				
			||||||
        once(event: "pause", listener: () => void): this;
 | 
					 | 
				
			||||||
        once(event: "resume", listener: () => void): this;
 | 
					 | 
				
			||||||
        once(event: "SIGCONT", listener: () => void): this;
 | 
					 | 
				
			||||||
        once(event: "SIGINT", listener: () => void): this;
 | 
					 | 
				
			||||||
        once(event: "SIGTSTP", listener: () => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        prependListener(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "line", listener: (input: string) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "pause", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "resume", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "SIGCONT", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "SIGINT", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "SIGTSTP", listener: () => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        prependOnceListener(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "line", listener: (input: string) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "pause", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "resume", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "SIGCONT", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "SIGINT", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "SIGTSTP", listener: () => void): this;
 | 
					 | 
				
			||||||
        [Symbol.asyncIterator](): AsyncIterableIterator<string>;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    type ReadLine = Interface; // type forwarded for backwards compatiblity
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    type Completer = (line: string) => CompleterResult;
 | 
					 | 
				
			||||||
    type AsyncCompleter = (line: string, callback: (err?: null | Error, result?: CompleterResult) => void) => any;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    type CompleterResult = [string[], string];
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface ReadLineOptions {
 | 
					 | 
				
			||||||
        input: NodeJS.ReadableStream;
 | 
					 | 
				
			||||||
        output?: NodeJS.WritableStream;
 | 
					 | 
				
			||||||
        completer?: Completer | AsyncCompleter;
 | 
					 | 
				
			||||||
        terminal?: boolean;
 | 
					 | 
				
			||||||
        historySize?: number;
 | 
					 | 
				
			||||||
        prompt?: string;
 | 
					 | 
				
			||||||
        crlfDelay?: number;
 | 
					 | 
				
			||||||
        removeHistoryDuplicates?: boolean;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function createInterface(input: NodeJS.ReadableStream, output?: NodeJS.WritableStream, completer?: Completer | AsyncCompleter, terminal?: boolean): Interface;
 | 
					 | 
				
			||||||
    function createInterface(options: ReadLineOptions): Interface;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function cursorTo(stream: NodeJS.WritableStream, x: number, y?: number): void;
 | 
					 | 
				
			||||||
    function emitKeypressEvents(stream: NodeJS.ReadableStream, interface?: Interface): void;
 | 
					 | 
				
			||||||
    function moveCursor(stream: NodeJS.WritableStream, dx: number | string, dy: number | string): void;
 | 
					 | 
				
			||||||
    function clearLine(stream: NodeJS.WritableStream, dir: number): void;
 | 
					 | 
				
			||||||
    function clearScreenDown(stream: NodeJS.WritableStream): void;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										382
									
								
								node_modules/@types/node/repl.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										382
									
								
								node_modules/@types/node/repl.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,382 +0,0 @@
 | 
				
			|||||||
declare module "repl" {
 | 
					 | 
				
			||||||
    import { Interface, Completer, AsyncCompleter } from "readline";
 | 
					 | 
				
			||||||
    import { Context } from "vm";
 | 
					 | 
				
			||||||
    import { InspectOptions } from "util";
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface ReplOptions {
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The input prompt to display.
 | 
					 | 
				
			||||||
         * Default: `"> "`
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        prompt?: string;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The `Readable` stream from which REPL input will be read.
 | 
					 | 
				
			||||||
         * Default: `process.stdin`
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        input?: NodeJS.ReadableStream;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The `Writable` stream to which REPL output will be written.
 | 
					 | 
				
			||||||
         * Default: `process.stdout`
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        output?: NodeJS.WritableStream;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * If `true`, specifies that the output should be treated as a TTY terminal, and have
 | 
					 | 
				
			||||||
         * ANSI/VT100 escape codes written to it.
 | 
					 | 
				
			||||||
         * Default: checking the value of the `isTTY` property on the output stream upon
 | 
					 | 
				
			||||||
         * instantiation.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        terminal?: boolean;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The function to be used when evaluating each given line of input.
 | 
					 | 
				
			||||||
         * Default: an async wrapper for the JavaScript `eval()` function. An `eval` function can
 | 
					 | 
				
			||||||
         * error with `repl.Recoverable` to indicate the input was incomplete and prompt for
 | 
					 | 
				
			||||||
         * additional lines.
 | 
					 | 
				
			||||||
         *
 | 
					 | 
				
			||||||
         * @see https://nodejs.org/dist/latest-v10.x/docs/api/repl.html#repl_default_evaluation
 | 
					 | 
				
			||||||
         * @see https://nodejs.org/dist/latest-v10.x/docs/api/repl.html#repl_custom_evaluation_functions
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        eval?: REPLEval;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * If `true`, specifies that the default `writer` function should include ANSI color
 | 
					 | 
				
			||||||
         * styling to REPL output. If a custom `writer` function is provided then this has no
 | 
					 | 
				
			||||||
         * effect.
 | 
					 | 
				
			||||||
         * Default: the REPL instance's `terminal` value.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        useColors?: boolean;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * If `true`, specifies that the default evaluation function will use the JavaScript
 | 
					 | 
				
			||||||
         * `global` as the context as opposed to creating a new separate context for the REPL
 | 
					 | 
				
			||||||
         * instance. The node CLI REPL sets this value to `true`.
 | 
					 | 
				
			||||||
         * Default: `false`.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        useGlobal?: boolean;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * If `true`, specifies that the default writer will not output the return value of a
 | 
					 | 
				
			||||||
         * command if it evaluates to `undefined`.
 | 
					 | 
				
			||||||
         * Default: `false`.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        ignoreUndefined?: boolean;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The function to invoke to format the output of each command before writing to `output`.
 | 
					 | 
				
			||||||
         * Default: a wrapper for `util.inspect`.
 | 
					 | 
				
			||||||
         *
 | 
					 | 
				
			||||||
         * @see https://nodejs.org/dist/latest-v10.x/docs/api/repl.html#repl_customizing_repl_output
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        writer?: REPLWriter;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * An optional function used for custom Tab auto completion.
 | 
					 | 
				
			||||||
         *
 | 
					 | 
				
			||||||
         * @see https://nodejs.org/dist/latest-v11.x/docs/api/readline.html#readline_use_of_the_completer_function
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        completer?: Completer | AsyncCompleter;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * A flag that specifies whether the default evaluator executes all JavaScript commands in
 | 
					 | 
				
			||||||
         * strict mode or default (sloppy) mode.
 | 
					 | 
				
			||||||
         * Accepted values are:
 | 
					 | 
				
			||||||
         * - `repl.REPL_MODE_SLOPPY` - evaluates expressions in sloppy mode.
 | 
					 | 
				
			||||||
         * - `repl.REPL_MODE_STRICT` - evaluates expressions in strict mode. This is equivalent to
 | 
					 | 
				
			||||||
         *   prefacing every repl statement with `'use strict'`.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        replMode?: typeof REPL_MODE_SLOPPY | typeof REPL_MODE_STRICT;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Stop evaluating the current piece of code when `SIGINT` is received, i.e. `Ctrl+C` is
 | 
					 | 
				
			||||||
         * pressed. This cannot be used together with a custom `eval` function.
 | 
					 | 
				
			||||||
         * Default: `false`.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        breakEvalOnSigint?: boolean;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    type REPLEval = (this: REPLServer, evalCmd: string, context: Context, file: string, cb: (err: Error | null, result: any) => void) => void;
 | 
					 | 
				
			||||||
    type REPLWriter = (this: REPLServer, obj: any) => string;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * This is the default "writer" value, if none is passed in the REPL options,
 | 
					 | 
				
			||||||
     * and it can be overridden by custom print functions.
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    const writer: REPLWriter & { options: InspectOptions };
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    type REPLCommandAction = (this: REPLServer, text: string) => void;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface REPLCommand {
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Help text to be displayed when `.help` is entered.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        help?: string;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The function to execute, optionally accepting a single string argument.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        action: REPLCommandAction;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * Provides a customizable Read-Eval-Print-Loop (REPL).
 | 
					 | 
				
			||||||
     *
 | 
					 | 
				
			||||||
     * Instances of `repl.REPLServer` will accept individual lines of user input, evaluate those
 | 
					 | 
				
			||||||
     * according to a user-defined evaluation function, then output the result. Input and output
 | 
					 | 
				
			||||||
     * may be from `stdin` and `stdout`, respectively, or may be connected to any Node.js `stream`.
 | 
					 | 
				
			||||||
     *
 | 
					 | 
				
			||||||
     * Instances of `repl.REPLServer` support automatic completion of inputs, simplistic Emacs-style
 | 
					 | 
				
			||||||
     * line editing, multi-line inputs, ANSI-styled output, saving and restoring current REPL session
 | 
					 | 
				
			||||||
     * state, error recovery, and customizable evaluation functions.
 | 
					 | 
				
			||||||
     *
 | 
					 | 
				
			||||||
     * Instances of `repl.REPLServer` are created using the `repl.start()` method and _should not_
 | 
					 | 
				
			||||||
     * be created directly using the JavaScript `new` keyword.
 | 
					 | 
				
			||||||
     *
 | 
					 | 
				
			||||||
     * @see https://nodejs.org/dist/latest-v10.x/docs/api/repl.html#repl_repl
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    class REPLServer extends Interface {
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The `vm.Context` provided to the `eval` function to be used for JavaScript
 | 
					 | 
				
			||||||
         * evaluation.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        readonly context: Context;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The `Readable` stream from which REPL input will be read.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        readonly inputStream: NodeJS.ReadableStream;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The `Writable` stream to which REPL output will be written.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        readonly outputStream: NodeJS.WritableStream;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The commands registered via `replServer.defineCommand()`.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        readonly commands: { readonly [name: string]: REPLCommand | undefined };
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * A value indicating whether the REPL is currently in "editor mode".
 | 
					 | 
				
			||||||
         *
 | 
					 | 
				
			||||||
         * @see https://nodejs.org/dist/latest-v10.x/docs/api/repl.html#repl_commands_and_special_keys
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        readonly editorMode: boolean;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * A value indicating whether the `_` variable has been assigned.
 | 
					 | 
				
			||||||
         *
 | 
					 | 
				
			||||||
         * @see https://nodejs.org/dist/latest-v10.x/docs/api/repl.html#repl_assignment_of_the_underscore_variable
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        readonly underscoreAssigned: boolean;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The last evaluation result from the REPL (assigned to the `_` variable inside of the REPL).
 | 
					 | 
				
			||||||
         *
 | 
					 | 
				
			||||||
         * @see https://nodejs.org/dist/latest-v10.x/docs/api/repl.html#repl_assignment_of_the_underscore_variable
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        readonly last: any;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * A value indicating whether the `_error` variable has been assigned.
 | 
					 | 
				
			||||||
         *
 | 
					 | 
				
			||||||
         * @since v9.8.0
 | 
					 | 
				
			||||||
         * @see https://nodejs.org/dist/latest-v10.x/docs/api/repl.html#repl_assignment_of_the_underscore_variable
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        readonly underscoreErrAssigned: boolean;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The last error raised inside the REPL (assigned to the `_error` variable inside of the REPL).
 | 
					 | 
				
			||||||
         *
 | 
					 | 
				
			||||||
         * @since v9.8.0
 | 
					 | 
				
			||||||
         * @see https://nodejs.org/dist/latest-v10.x/docs/api/repl.html#repl_assignment_of_the_underscore_variable
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        readonly lastError: any;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Specified in the REPL options, this is the function to be used when evaluating each
 | 
					 | 
				
			||||||
         * given line of input. If not specified in the REPL options, this is an async wrapper
 | 
					 | 
				
			||||||
         * for the JavaScript `eval()` function.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        readonly eval: REPLEval;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Specified in the REPL options, this is a value indicating whether the default
 | 
					 | 
				
			||||||
         * `writer` function should include ANSI color styling to REPL output.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        readonly useColors: boolean;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Specified in the REPL options, this is a value indicating whether the default `eval`
 | 
					 | 
				
			||||||
         * function will use the JavaScript `global` as the context as opposed to creating a new
 | 
					 | 
				
			||||||
         * separate context for the REPL instance.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        readonly useGlobal: boolean;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Specified in the REPL options, this is a value indicating whether the default `writer`
 | 
					 | 
				
			||||||
         * function should output the result of a command if it evaluates to `undefined`.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        readonly ignoreUndefined: boolean;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Specified in the REPL options, this is the function to invoke to format the output of
 | 
					 | 
				
			||||||
         * each command before writing to `outputStream`. If not specified in the REPL options,
 | 
					 | 
				
			||||||
         * this will be a wrapper for `util.inspect`.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        readonly writer: REPLWriter;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Specified in the REPL options, this is the function to use for custom Tab auto-completion.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        readonly completer: Completer | AsyncCompleter;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Specified in the REPL options, this is a flag that specifies whether the default `eval`
 | 
					 | 
				
			||||||
         * function should execute all JavaScript commands in strict mode or default (sloppy) mode.
 | 
					 | 
				
			||||||
         * Possible values are:
 | 
					 | 
				
			||||||
         * - `repl.REPL_MODE_SLOPPY` - evaluates expressions in sloppy mode.
 | 
					 | 
				
			||||||
         * - `repl.REPL_MODE_STRICT` - evaluates expressions in strict mode. This is equivalent to
 | 
					 | 
				
			||||||
         *    prefacing every repl statement with `'use strict'`.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        readonly replMode: typeof REPL_MODE_SLOPPY | typeof REPL_MODE_STRICT;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * NOTE: According to the documentation:
 | 
					 | 
				
			||||||
         *
 | 
					 | 
				
			||||||
         * > Instances of `repl.REPLServer` are created using the `repl.start()` method and
 | 
					 | 
				
			||||||
         * > _should not_ be created directly using the JavaScript `new` keyword.
 | 
					 | 
				
			||||||
         *
 | 
					 | 
				
			||||||
         * `REPLServer` cannot be subclassed due to implementation specifics in NodeJS.
 | 
					 | 
				
			||||||
         *
 | 
					 | 
				
			||||||
         * @see https://nodejs.org/dist/latest-v10.x/docs/api/repl.html#repl_class_replserver
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        private constructor();
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Used to add new `.`-prefixed commands to the REPL instance. Such commands are invoked
 | 
					 | 
				
			||||||
         * by typing a `.` followed by the `keyword`.
 | 
					 | 
				
			||||||
         *
 | 
					 | 
				
			||||||
         * @param keyword The command keyword (_without_ a leading `.` character).
 | 
					 | 
				
			||||||
         * @param cmd The function to invoke when the command is processed.
 | 
					 | 
				
			||||||
         *
 | 
					 | 
				
			||||||
         * @see https://nodejs.org/dist/latest-v10.x/docs/api/repl.html#repl_replserver_definecommand_keyword_cmd
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        defineCommand(keyword: string, cmd: REPLCommandAction | REPLCommand): void;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Readies the REPL instance for input from the user, printing the configured `prompt` to a
 | 
					 | 
				
			||||||
         * new line in the `output` and resuming the `input` to accept new input.
 | 
					 | 
				
			||||||
         *
 | 
					 | 
				
			||||||
         * When multi-line input is being entered, an ellipsis is printed rather than the 'prompt'.
 | 
					 | 
				
			||||||
         *
 | 
					 | 
				
			||||||
         * This method is primarily intended to be called from within the action function for
 | 
					 | 
				
			||||||
         * commands registered using the `replServer.defineCommand()` method.
 | 
					 | 
				
			||||||
         *
 | 
					 | 
				
			||||||
         * @param preserveCursor When `true`, the cursor placement will not be reset to `0`.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        displayPrompt(preserveCursor?: boolean): void;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Clears any command that has been buffered but not yet executed.
 | 
					 | 
				
			||||||
         *
 | 
					 | 
				
			||||||
         * This method is primarily intended to be called from within the action function for
 | 
					 | 
				
			||||||
         * commands registered using the `replServer.defineCommand()` method.
 | 
					 | 
				
			||||||
         *
 | 
					 | 
				
			||||||
         * @since v9.0.0
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        clearBufferedCommand(): void;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Initializes a history log file for the REPL instance. When executing the
 | 
					 | 
				
			||||||
         * Node.js binary and using the command line REPL, a history file is initialized
 | 
					 | 
				
			||||||
         * by default. However, this is not the case when creating a REPL
 | 
					 | 
				
			||||||
         * programmatically. Use this method to initialize a history log file when working
 | 
					 | 
				
			||||||
         * with REPL instances programmatically.
 | 
					 | 
				
			||||||
         * @param path The path to the history file
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        setupHistory(path: string, cb: (err: Error | null, repl: this) => void): void;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * events.EventEmitter
 | 
					 | 
				
			||||||
         * 1. close - inherited from `readline.Interface`
 | 
					 | 
				
			||||||
         * 2. line - inherited from `readline.Interface`
 | 
					 | 
				
			||||||
         * 3. pause - inherited from `readline.Interface`
 | 
					 | 
				
			||||||
         * 4. resume - inherited from `readline.Interface`
 | 
					 | 
				
			||||||
         * 5. SIGCONT - inherited from `readline.Interface`
 | 
					 | 
				
			||||||
         * 6. SIGINT - inherited from `readline.Interface`
 | 
					 | 
				
			||||||
         * 7. SIGTSTP - inherited from `readline.Interface`
 | 
					 | 
				
			||||||
         * 8. exit
 | 
					 | 
				
			||||||
         * 9. reset
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        addListener(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "line", listener: (input: string) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "pause", listener: () => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "resume", listener: () => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "SIGCONT", listener: () => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "SIGINT", listener: () => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "SIGTSTP", listener: () => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "exit", listener: () => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "reset", listener: (context: Context) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        emit(event: string | symbol, ...args: any[]): boolean;
 | 
					 | 
				
			||||||
        emit(event: "close"): boolean;
 | 
					 | 
				
			||||||
        emit(event: "line", input: string): boolean;
 | 
					 | 
				
			||||||
        emit(event: "pause"): boolean;
 | 
					 | 
				
			||||||
        emit(event: "resume"): boolean;
 | 
					 | 
				
			||||||
        emit(event: "SIGCONT"): boolean;
 | 
					 | 
				
			||||||
        emit(event: "SIGINT"): boolean;
 | 
					 | 
				
			||||||
        emit(event: "SIGTSTP"): boolean;
 | 
					 | 
				
			||||||
        emit(event: "exit"): boolean;
 | 
					 | 
				
			||||||
        emit(event: "reset", context: Context): boolean;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        on(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        on(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
        on(event: "line", listener: (input: string) => void): this;
 | 
					 | 
				
			||||||
        on(event: "pause", listener: () => void): this;
 | 
					 | 
				
			||||||
        on(event: "resume", listener: () => void): this;
 | 
					 | 
				
			||||||
        on(event: "SIGCONT", listener: () => void): this;
 | 
					 | 
				
			||||||
        on(event: "SIGINT", listener: () => void): this;
 | 
					 | 
				
			||||||
        on(event: "SIGTSTP", listener: () => void): this;
 | 
					 | 
				
			||||||
        on(event: "exit", listener: () => void): this;
 | 
					 | 
				
			||||||
        on(event: "reset", listener: (context: Context) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        once(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        once(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
        once(event: "line", listener: (input: string) => void): this;
 | 
					 | 
				
			||||||
        once(event: "pause", listener: () => void): this;
 | 
					 | 
				
			||||||
        once(event: "resume", listener: () => void): this;
 | 
					 | 
				
			||||||
        once(event: "SIGCONT", listener: () => void): this;
 | 
					 | 
				
			||||||
        once(event: "SIGINT", listener: () => void): this;
 | 
					 | 
				
			||||||
        once(event: "SIGTSTP", listener: () => void): this;
 | 
					 | 
				
			||||||
        once(event: "exit", listener: () => void): this;
 | 
					 | 
				
			||||||
        once(event: "reset", listener: (context: Context) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        prependListener(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "line", listener: (input: string) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "pause", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "resume", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "SIGCONT", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "SIGINT", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "SIGTSTP", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "exit", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "reset", listener: (context: Context) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        prependOnceListener(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "line", listener: (input: string) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "pause", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "resume", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "SIGCONT", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "SIGINT", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "SIGTSTP", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "exit", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "reset", listener: (context: Context) => void): this;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * A flag passed in the REPL options. Evaluates expressions in sloppy mode.
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    export const REPL_MODE_SLOPPY: symbol; // TODO: unique symbol
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * A flag passed in the REPL options. Evaluates expressions in strict mode.
 | 
					 | 
				
			||||||
     * This is equivalent to prefacing every repl statement with `'use strict'`.
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    export const REPL_MODE_STRICT: symbol; // TODO: unique symbol
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * Creates and starts a `repl.REPLServer` instance.
 | 
					 | 
				
			||||||
     *
 | 
					 | 
				
			||||||
     * @param options The options for the `REPLServer`. If `options` is a string, then it specifies
 | 
					 | 
				
			||||||
     * the input prompt.
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    function start(options?: string | ReplOptions): REPLServer;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * Indicates a recoverable error that a `REPLServer` can use to support multi-line input.
 | 
					 | 
				
			||||||
     *
 | 
					 | 
				
			||||||
     * @see https://nodejs.org/dist/latest-v10.x/docs/api/repl.html#repl_recoverable_errors
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    class Recoverable extends SyntaxError {
 | 
					 | 
				
			||||||
        err: Error;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        constructor(err: Error);
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										300
									
								
								node_modules/@types/node/stream.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										300
									
								
								node_modules/@types/node/stream.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,300 +0,0 @@
 | 
				
			|||||||
declare module "stream" {
 | 
					 | 
				
			||||||
    import * as events from "events";
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    class internal extends events.EventEmitter {
 | 
					 | 
				
			||||||
        pipe<T extends NodeJS.WritableStream>(destination: T, options?: { end?: boolean; }): T;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    namespace internal {
 | 
					 | 
				
			||||||
        class Stream extends internal { }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        interface ReadableOptions {
 | 
					 | 
				
			||||||
            highWaterMark?: number;
 | 
					 | 
				
			||||||
            encoding?: string;
 | 
					 | 
				
			||||||
            objectMode?: boolean;
 | 
					 | 
				
			||||||
            read?(this: Readable, size: number): void;
 | 
					 | 
				
			||||||
            destroy?(this: Readable, error: Error | null, callback: (error: Error | null) => void): void;
 | 
					 | 
				
			||||||
            autoDestroy?: boolean;
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        class Readable extends Stream implements NodeJS.ReadableStream {
 | 
					 | 
				
			||||||
            readable: boolean;
 | 
					 | 
				
			||||||
            readonly readableHighWaterMark: number;
 | 
					 | 
				
			||||||
            readonly readableLength: number;
 | 
					 | 
				
			||||||
            constructor(opts?: ReadableOptions);
 | 
					 | 
				
			||||||
            _read(size: number): void;
 | 
					 | 
				
			||||||
            read(size?: number): any;
 | 
					 | 
				
			||||||
            setEncoding(encoding: string): this;
 | 
					 | 
				
			||||||
            pause(): this;
 | 
					 | 
				
			||||||
            resume(): this;
 | 
					 | 
				
			||||||
            isPaused(): boolean;
 | 
					 | 
				
			||||||
            unpipe(destination?: NodeJS.WritableStream): this;
 | 
					 | 
				
			||||||
            unshift(chunk: any): void;
 | 
					 | 
				
			||||||
            wrap(oldStream: NodeJS.ReadableStream): this;
 | 
					 | 
				
			||||||
            push(chunk: any, encoding?: string): boolean;
 | 
					 | 
				
			||||||
            _destroy(error: Error | null, callback: (error?: Error | null) => void): void;
 | 
					 | 
				
			||||||
            destroy(error?: Error): void;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
            /**
 | 
					 | 
				
			||||||
             * Event emitter
 | 
					 | 
				
			||||||
             * The defined events on documents including:
 | 
					 | 
				
			||||||
             * 1. close
 | 
					 | 
				
			||||||
             * 2. data
 | 
					 | 
				
			||||||
             * 3. end
 | 
					 | 
				
			||||||
             * 4. readable
 | 
					 | 
				
			||||||
             * 5. error
 | 
					 | 
				
			||||||
             */
 | 
					 | 
				
			||||||
            addListener(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
            addListener(event: "data", listener: (chunk: any) => void): this;
 | 
					 | 
				
			||||||
            addListener(event: "end", listener: () => void): this;
 | 
					 | 
				
			||||||
            addListener(event: "readable", listener: () => void): this;
 | 
					 | 
				
			||||||
            addListener(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
            addListener(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
            emit(event: "close"): boolean;
 | 
					 | 
				
			||||||
            emit(event: "data", chunk: any): boolean;
 | 
					 | 
				
			||||||
            emit(event: "end"): boolean;
 | 
					 | 
				
			||||||
            emit(event: "readable"): boolean;
 | 
					 | 
				
			||||||
            emit(event: "error", err: Error): boolean;
 | 
					 | 
				
			||||||
            emit(event: string | symbol, ...args: any[]): boolean;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
            on(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
            on(event: "data", listener: (chunk: any) => void): this;
 | 
					 | 
				
			||||||
            on(event: "end", listener: () => void): this;
 | 
					 | 
				
			||||||
            on(event: "readable", listener: () => void): this;
 | 
					 | 
				
			||||||
            on(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
            on(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
            once(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
            once(event: "data", listener: (chunk: any) => void): this;
 | 
					 | 
				
			||||||
            once(event: "end", listener: () => void): this;
 | 
					 | 
				
			||||||
            once(event: "readable", listener: () => void): this;
 | 
					 | 
				
			||||||
            once(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
            once(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
            prependListener(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
            prependListener(event: "data", listener: (chunk: any) => void): this;
 | 
					 | 
				
			||||||
            prependListener(event: "end", listener: () => void): this;
 | 
					 | 
				
			||||||
            prependListener(event: "readable", listener: () => void): this;
 | 
					 | 
				
			||||||
            prependListener(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
            prependListener(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
            prependOnceListener(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
            prependOnceListener(event: "data", listener: (chunk: any) => void): this;
 | 
					 | 
				
			||||||
            prependOnceListener(event: "end", listener: () => void): this;
 | 
					 | 
				
			||||||
            prependOnceListener(event: "readable", listener: () => void): this;
 | 
					 | 
				
			||||||
            prependOnceListener(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
            prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
            removeListener(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
            removeListener(event: "data", listener: (chunk: any) => void): this;
 | 
					 | 
				
			||||||
            removeListener(event: "end", listener: () => void): this;
 | 
					 | 
				
			||||||
            removeListener(event: "readable", listener: () => void): this;
 | 
					 | 
				
			||||||
            removeListener(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
            removeListener(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
            [Symbol.asyncIterator](): AsyncIterableIterator<any>;
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        interface WritableOptions {
 | 
					 | 
				
			||||||
            highWaterMark?: number;
 | 
					 | 
				
			||||||
            decodeStrings?: boolean;
 | 
					 | 
				
			||||||
            defaultEncoding?: string;
 | 
					 | 
				
			||||||
            objectMode?: boolean;
 | 
					 | 
				
			||||||
            emitClose?: boolean;
 | 
					 | 
				
			||||||
            write?(this: Writable, chunk: any, encoding: string, callback: (error?: Error | null) => void): void;
 | 
					 | 
				
			||||||
            writev?(this: Writable, chunks: Array<{ chunk: any, encoding: string }>, callback: (error?: Error | null) => void): void;
 | 
					 | 
				
			||||||
            destroy?(this: Writable, error: Error | null, callback: (error: Error | null) => void): void;
 | 
					 | 
				
			||||||
            final?(this: Writable, callback: (error?: Error | null) => void): void;
 | 
					 | 
				
			||||||
            autoDestroy?: boolean;
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        class Writable extends Stream implements NodeJS.WritableStream {
 | 
					 | 
				
			||||||
            writable: boolean;
 | 
					 | 
				
			||||||
            readonly writableHighWaterMark: number;
 | 
					 | 
				
			||||||
            readonly writableLength: number;
 | 
					 | 
				
			||||||
            constructor(opts?: WritableOptions);
 | 
					 | 
				
			||||||
            _write(chunk: any, encoding: string, callback: (error?: Error | null) => void): void;
 | 
					 | 
				
			||||||
            _writev?(chunks: Array<{ chunk: any, encoding: string }>, callback: (error?: Error | null) => void): void;
 | 
					 | 
				
			||||||
            _destroy(error: Error | null, callback: (error?: Error | null) => void): void;
 | 
					 | 
				
			||||||
            _final(callback: (error?: Error | null) => void): void;
 | 
					 | 
				
			||||||
            write(chunk: any, cb?: (error: Error | null | undefined) => void): boolean;
 | 
					 | 
				
			||||||
            write(chunk: any, encoding: string, cb?: (error: Error | null | undefined) => void): boolean;
 | 
					 | 
				
			||||||
            setDefaultEncoding(encoding: string): this;
 | 
					 | 
				
			||||||
            end(cb?: () => void): void;
 | 
					 | 
				
			||||||
            end(chunk: any, cb?: () => void): void;
 | 
					 | 
				
			||||||
            end(chunk: any, encoding: string, cb?: () => void): void;
 | 
					 | 
				
			||||||
            cork(): void;
 | 
					 | 
				
			||||||
            uncork(): void;
 | 
					 | 
				
			||||||
            destroy(error?: Error): void;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
            /**
 | 
					 | 
				
			||||||
             * Event emitter
 | 
					 | 
				
			||||||
             * The defined events on documents including:
 | 
					 | 
				
			||||||
             * 1. close
 | 
					 | 
				
			||||||
             * 2. drain
 | 
					 | 
				
			||||||
             * 3. error
 | 
					 | 
				
			||||||
             * 4. finish
 | 
					 | 
				
			||||||
             * 5. pipe
 | 
					 | 
				
			||||||
             * 6. unpipe
 | 
					 | 
				
			||||||
             */
 | 
					 | 
				
			||||||
            addListener(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
            addListener(event: "drain", listener: () => void): this;
 | 
					 | 
				
			||||||
            addListener(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
            addListener(event: "finish", listener: () => void): this;
 | 
					 | 
				
			||||||
            addListener(event: "pipe", listener: (src: Readable) => void): this;
 | 
					 | 
				
			||||||
            addListener(event: "unpipe", listener: (src: Readable) => void): this;
 | 
					 | 
				
			||||||
            addListener(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
            emit(event: "close"): boolean;
 | 
					 | 
				
			||||||
            emit(event: "drain"): boolean;
 | 
					 | 
				
			||||||
            emit(event: "error", err: Error): boolean;
 | 
					 | 
				
			||||||
            emit(event: "finish"): boolean;
 | 
					 | 
				
			||||||
            emit(event: "pipe", src: Readable): boolean;
 | 
					 | 
				
			||||||
            emit(event: "unpipe", src: Readable): boolean;
 | 
					 | 
				
			||||||
            emit(event: string | symbol, ...args: any[]): boolean;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
            on(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
            on(event: "drain", listener: () => void): this;
 | 
					 | 
				
			||||||
            on(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
            on(event: "finish", listener: () => void): this;
 | 
					 | 
				
			||||||
            on(event: "pipe", listener: (src: Readable) => void): this;
 | 
					 | 
				
			||||||
            on(event: "unpipe", listener: (src: Readable) => void): this;
 | 
					 | 
				
			||||||
            on(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
            once(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
            once(event: "drain", listener: () => void): this;
 | 
					 | 
				
			||||||
            once(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
            once(event: "finish", listener: () => void): this;
 | 
					 | 
				
			||||||
            once(event: "pipe", listener: (src: Readable) => void): this;
 | 
					 | 
				
			||||||
            once(event: "unpipe", listener: (src: Readable) => void): this;
 | 
					 | 
				
			||||||
            once(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
            prependListener(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
            prependListener(event: "drain", listener: () => void): this;
 | 
					 | 
				
			||||||
            prependListener(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
            prependListener(event: "finish", listener: () => void): this;
 | 
					 | 
				
			||||||
            prependListener(event: "pipe", listener: (src: Readable) => void): this;
 | 
					 | 
				
			||||||
            prependListener(event: "unpipe", listener: (src: Readable) => void): this;
 | 
					 | 
				
			||||||
            prependListener(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
            prependOnceListener(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
            prependOnceListener(event: "drain", listener: () => void): this;
 | 
					 | 
				
			||||||
            prependOnceListener(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
            prependOnceListener(event: "finish", listener: () => void): this;
 | 
					 | 
				
			||||||
            prependOnceListener(event: "pipe", listener: (src: Readable) => void): this;
 | 
					 | 
				
			||||||
            prependOnceListener(event: "unpipe", listener: (src: Readable) => void): this;
 | 
					 | 
				
			||||||
            prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
            removeListener(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
            removeListener(event: "drain", listener: () => void): this;
 | 
					 | 
				
			||||||
            removeListener(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
            removeListener(event: "finish", listener: () => void): this;
 | 
					 | 
				
			||||||
            removeListener(event: "pipe", listener: (src: Readable) => void): this;
 | 
					 | 
				
			||||||
            removeListener(event: "unpipe", listener: (src: Readable) => void): this;
 | 
					 | 
				
			||||||
            removeListener(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        interface DuplexOptions extends ReadableOptions, WritableOptions {
 | 
					 | 
				
			||||||
            allowHalfOpen?: boolean;
 | 
					 | 
				
			||||||
            readableObjectMode?: boolean;
 | 
					 | 
				
			||||||
            writableObjectMode?: boolean;
 | 
					 | 
				
			||||||
            read?(this: Duplex, size: number): void;
 | 
					 | 
				
			||||||
            write?(this: Duplex, chunk: any, encoding: string, callback: (error?: Error | null) => void): void;
 | 
					 | 
				
			||||||
            writev?(this: Duplex, chunks: Array<{ chunk: any, encoding: string }>, callback: (error?: Error | null) => void): void;
 | 
					 | 
				
			||||||
            final?(this: Duplex, callback: (error?: Error | null) => void): void;
 | 
					 | 
				
			||||||
            destroy?(this: Duplex, error: Error | null, callback: (error: Error | null) => void): void;
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        // Note: Duplex extends both Readable and Writable.
 | 
					 | 
				
			||||||
        class Duplex extends Readable implements Writable {
 | 
					 | 
				
			||||||
            writable: boolean;
 | 
					 | 
				
			||||||
            readonly writableHighWaterMark: number;
 | 
					 | 
				
			||||||
            readonly writableLength: number;
 | 
					 | 
				
			||||||
            constructor(opts?: DuplexOptions);
 | 
					 | 
				
			||||||
            _write(chunk: any, encoding: string, callback: (error?: Error | null) => void): void;
 | 
					 | 
				
			||||||
            _writev?(chunks: Array<{ chunk: any, encoding: string }>, callback: (error?: Error | null) => void): void;
 | 
					 | 
				
			||||||
            _destroy(error: Error | null, callback: (error: Error | null) => void): void;
 | 
					 | 
				
			||||||
            _final(callback: (error?: Error | null) => void): void;
 | 
					 | 
				
			||||||
            write(chunk: any, encoding?: string, cb?: (error: Error | null | undefined) => void): boolean;
 | 
					 | 
				
			||||||
            write(chunk: any, cb?: (error: Error | null | undefined) => void): boolean;
 | 
					 | 
				
			||||||
            setDefaultEncoding(encoding: string): this;
 | 
					 | 
				
			||||||
            end(cb?: () => void): void;
 | 
					 | 
				
			||||||
            end(chunk: any, cb?: () => void): void;
 | 
					 | 
				
			||||||
            end(chunk: any, encoding?: string, cb?: () => void): void;
 | 
					 | 
				
			||||||
            cork(): void;
 | 
					 | 
				
			||||||
            uncork(): void;
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        type TransformCallback = (error?: Error | null, data?: any) => void;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        interface TransformOptions extends DuplexOptions {
 | 
					 | 
				
			||||||
            read?(this: Transform, size: number): void;
 | 
					 | 
				
			||||||
            write?(this: Transform, chunk: any, encoding: string, callback: (error?: Error | null) => void): void;
 | 
					 | 
				
			||||||
            writev?(this: Transform, chunks: Array<{ chunk: any, encoding: string }>, callback: (error?: Error | null) => void): void;
 | 
					 | 
				
			||||||
            final?(this: Transform, callback: (error?: Error | null) => void): void;
 | 
					 | 
				
			||||||
            destroy?(this: Transform, error: Error | null, callback: (error: Error | null) => void): void;
 | 
					 | 
				
			||||||
            transform?(this: Transform, chunk: any, encoding: string, callback: TransformCallback): void;
 | 
					 | 
				
			||||||
            flush?(this: Transform, callback: TransformCallback): void;
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        class Transform extends Duplex {
 | 
					 | 
				
			||||||
            constructor(opts?: TransformOptions);
 | 
					 | 
				
			||||||
            _transform(chunk: any, encoding: string, callback: TransformCallback): void;
 | 
					 | 
				
			||||||
            _flush(callback: TransformCallback): void;
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        class PassThrough extends Transform { }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        function finished(stream: NodeJS.ReadableStream | NodeJS.WritableStream | NodeJS.ReadWriteStream, callback: (err?: NodeJS.ErrnoException | null) => void): () => void;
 | 
					 | 
				
			||||||
        namespace finished {
 | 
					 | 
				
			||||||
            function __promisify__(stream: NodeJS.ReadableStream | NodeJS.WritableStream | NodeJS.ReadWriteStream): Promise<void>;
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        function pipeline<T extends NodeJS.WritableStream>(stream1: NodeJS.ReadableStream, stream2: T, callback?: (err: NodeJS.ErrnoException | null) => void): T;
 | 
					 | 
				
			||||||
        function pipeline<T extends NodeJS.WritableStream>(stream1: NodeJS.ReadableStream, stream2: NodeJS.ReadWriteStream, stream3: T, callback?: (err: NodeJS.ErrnoException | null) => void): T;
 | 
					 | 
				
			||||||
        function pipeline<T extends NodeJS.WritableStream>(
 | 
					 | 
				
			||||||
            stream1: NodeJS.ReadableStream,
 | 
					 | 
				
			||||||
            stream2: NodeJS.ReadWriteStream,
 | 
					 | 
				
			||||||
            stream3: NodeJS.ReadWriteStream,
 | 
					 | 
				
			||||||
            stream4: T,
 | 
					 | 
				
			||||||
            callback?: (err: NodeJS.ErrnoException | null) => void,
 | 
					 | 
				
			||||||
        ): T;
 | 
					 | 
				
			||||||
        function pipeline<T extends NodeJS.WritableStream>(
 | 
					 | 
				
			||||||
            stream1: NodeJS.ReadableStream,
 | 
					 | 
				
			||||||
            stream2: NodeJS.ReadWriteStream,
 | 
					 | 
				
			||||||
            stream3: NodeJS.ReadWriteStream,
 | 
					 | 
				
			||||||
            stream4: NodeJS.ReadWriteStream,
 | 
					 | 
				
			||||||
            stream5: T,
 | 
					 | 
				
			||||||
            callback?: (err: NodeJS.ErrnoException | null) => void,
 | 
					 | 
				
			||||||
        ): T;
 | 
					 | 
				
			||||||
        function pipeline(streams: Array<NodeJS.ReadableStream | NodeJS.WritableStream | NodeJS.ReadWriteStream>, callback?: (err: NodeJS.ErrnoException | null) => void): NodeJS.WritableStream;
 | 
					 | 
				
			||||||
        function pipeline(
 | 
					 | 
				
			||||||
            stream1: NodeJS.ReadableStream,
 | 
					 | 
				
			||||||
            stream2: NodeJS.ReadWriteStream | NodeJS.WritableStream,
 | 
					 | 
				
			||||||
            ...streams: Array<NodeJS.ReadWriteStream | NodeJS.WritableStream | ((err: NodeJS.ErrnoException | null) => void)>,
 | 
					 | 
				
			||||||
        ): NodeJS.WritableStream;
 | 
					 | 
				
			||||||
        namespace pipeline {
 | 
					 | 
				
			||||||
            function __promisify__(stream1: NodeJS.ReadableStream, stream2: NodeJS.WritableStream): Promise<void>;
 | 
					 | 
				
			||||||
            function __promisify__(stream1: NodeJS.ReadableStream, stream2: NodeJS.ReadWriteStream, stream3: NodeJS.WritableStream): Promise<void>;
 | 
					 | 
				
			||||||
            function __promisify__(stream1: NodeJS.ReadableStream, stream2: NodeJS.ReadWriteStream, stream3: NodeJS.ReadWriteStream, stream4: NodeJS.WritableStream): Promise<void>;
 | 
					 | 
				
			||||||
            function __promisify__(
 | 
					 | 
				
			||||||
                stream1: NodeJS.ReadableStream,
 | 
					 | 
				
			||||||
                stream2: NodeJS.ReadWriteStream,
 | 
					 | 
				
			||||||
                stream3: NodeJS.ReadWriteStream,
 | 
					 | 
				
			||||||
                stream4: NodeJS.ReadWriteStream,
 | 
					 | 
				
			||||||
                stream5: NodeJS.WritableStream,
 | 
					 | 
				
			||||||
            ): Promise<void>;
 | 
					 | 
				
			||||||
            function __promisify__(streams: Array<NodeJS.ReadableStream | NodeJS.WritableStream | NodeJS.ReadWriteStream>): Promise<void>;
 | 
					 | 
				
			||||||
            function __promisify__(
 | 
					 | 
				
			||||||
                stream1: NodeJS.ReadableStream,
 | 
					 | 
				
			||||||
                stream2: NodeJS.ReadWriteStream | NodeJS.WritableStream,
 | 
					 | 
				
			||||||
                ...streams: Array<NodeJS.ReadWriteStream | NodeJS.WritableStream>,
 | 
					 | 
				
			||||||
            ): Promise<void>;
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        interface Pipe { }
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    export = internal;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										9
									
								
								node_modules/@types/node/string_decoder.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										9
									
								
								node_modules/@types/node/string_decoder.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,9 +0,0 @@
 | 
				
			|||||||
declare module "string_decoder" {
 | 
					 | 
				
			||||||
    interface NodeStringDecoder {
 | 
					 | 
				
			||||||
        write(buffer: Buffer): string;
 | 
					 | 
				
			||||||
        end(buffer?: Buffer): string;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    const StringDecoder: {
 | 
					 | 
				
			||||||
        new(encoding?: string): NodeStringDecoder;
 | 
					 | 
				
			||||||
    };
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										16
									
								
								node_modules/@types/node/timers.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										16
									
								
								node_modules/@types/node/timers.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,16 +0,0 @@
 | 
				
			|||||||
declare module "timers" {
 | 
					 | 
				
			||||||
    function setTimeout(callback: (...args: any[]) => void, ms: number, ...args: any[]): NodeJS.Timeout;
 | 
					 | 
				
			||||||
    namespace setTimeout {
 | 
					 | 
				
			||||||
        function __promisify__(ms: number): Promise<void>;
 | 
					 | 
				
			||||||
        function __promisify__<T>(ms: number, value: T): Promise<T>;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    function clearTimeout(timeoutId: NodeJS.Timeout): void;
 | 
					 | 
				
			||||||
    function setInterval(callback: (...args: any[]) => void, ms: number, ...args: any[]): NodeJS.Timeout;
 | 
					 | 
				
			||||||
    function clearInterval(intervalId: NodeJS.Timeout): void;
 | 
					 | 
				
			||||||
    function setImmediate(callback: (...args: any[]) => void, ...args: any[]): NodeJS.Immediate;
 | 
					 | 
				
			||||||
    namespace setImmediate {
 | 
					 | 
				
			||||||
        function __promisify__(): Promise<void>;
 | 
					 | 
				
			||||||
        function __promisify__<T>(value: T): Promise<T>;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    function clearImmediate(immediateId: NodeJS.Immediate): void;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										401
									
								
								node_modules/@types/node/tls.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										401
									
								
								node_modules/@types/node/tls.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,401 +0,0 @@
 | 
				
			|||||||
declare module "tls" {
 | 
					 | 
				
			||||||
    import * as crypto from "crypto";
 | 
					 | 
				
			||||||
    import * as dns from "dns";
 | 
					 | 
				
			||||||
    import * as net from "net";
 | 
					 | 
				
			||||||
    import * as stream from "stream";
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    const CLIENT_RENEG_LIMIT: number;
 | 
					 | 
				
			||||||
    const CLIENT_RENEG_WINDOW: number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface Certificate {
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Country code.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        C: string;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Street.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        ST: string;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Locality.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        L: string;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Organization.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        O: string;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Organizational unit.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        OU: string;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Common name.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        CN: string;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface PeerCertificate {
 | 
					 | 
				
			||||||
        subject: Certificate;
 | 
					 | 
				
			||||||
        issuer: Certificate;
 | 
					 | 
				
			||||||
        subjectaltname: string;
 | 
					 | 
				
			||||||
        infoAccess: { [index: string]: string[] | undefined };
 | 
					 | 
				
			||||||
        modulus: string;
 | 
					 | 
				
			||||||
        exponent: string;
 | 
					 | 
				
			||||||
        valid_from: string;
 | 
					 | 
				
			||||||
        valid_to: string;
 | 
					 | 
				
			||||||
        fingerprint: string;
 | 
					 | 
				
			||||||
        ext_key_usage: string[];
 | 
					 | 
				
			||||||
        serialNumber: string;
 | 
					 | 
				
			||||||
        raw: Buffer;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface DetailedPeerCertificate extends PeerCertificate {
 | 
					 | 
				
			||||||
        issuerCertificate: DetailedPeerCertificate;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface CipherNameAndProtocol {
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The cipher name.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        name: string;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * SSL/TLS protocol version.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        version: string;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    class TLSSocket extends net.Socket {
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Construct a new tls.TLSSocket object from an existing TCP socket.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        constructor(socket: net.Socket, options?: {
 | 
					 | 
				
			||||||
            /**
 | 
					 | 
				
			||||||
             * An optional TLS context object from tls.createSecureContext()
 | 
					 | 
				
			||||||
             */
 | 
					 | 
				
			||||||
            secureContext?: SecureContext,
 | 
					 | 
				
			||||||
            /**
 | 
					 | 
				
			||||||
             * If true the TLS socket will be instantiated in server-mode.
 | 
					 | 
				
			||||||
             * Defaults to false.
 | 
					 | 
				
			||||||
             */
 | 
					 | 
				
			||||||
            isServer?: boolean,
 | 
					 | 
				
			||||||
            /**
 | 
					 | 
				
			||||||
             * An optional net.Server instance.
 | 
					 | 
				
			||||||
             */
 | 
					 | 
				
			||||||
            server?: net.Server,
 | 
					 | 
				
			||||||
            /**
 | 
					 | 
				
			||||||
             * If true the server will request a certificate from clients that
 | 
					 | 
				
			||||||
             * connect and attempt to verify that certificate. Defaults to
 | 
					 | 
				
			||||||
             * false.
 | 
					 | 
				
			||||||
             */
 | 
					 | 
				
			||||||
            requestCert?: boolean,
 | 
					 | 
				
			||||||
            /**
 | 
					 | 
				
			||||||
             * If true the server will reject any connection which is not
 | 
					 | 
				
			||||||
             * authorized with the list of supplied CAs. This option only has an
 | 
					 | 
				
			||||||
             * effect if requestCert is true. Defaults to false.
 | 
					 | 
				
			||||||
             */
 | 
					 | 
				
			||||||
            rejectUnauthorized?: boolean,
 | 
					 | 
				
			||||||
            /**
 | 
					 | 
				
			||||||
             * An array of strings or a Buffer naming possible NPN protocols.
 | 
					 | 
				
			||||||
             * (Protocols should be ordered by their priority.)
 | 
					 | 
				
			||||||
             */
 | 
					 | 
				
			||||||
            NPNProtocols?: string[] | Buffer[] | Uint8Array[] | Buffer | Uint8Array,
 | 
					 | 
				
			||||||
            /**
 | 
					 | 
				
			||||||
             * An array of strings or a Buffer naming possible ALPN protocols.
 | 
					 | 
				
			||||||
             * (Protocols should be ordered by their priority.) When the server
 | 
					 | 
				
			||||||
             * receives both NPN and ALPN extensions from the client, ALPN takes
 | 
					 | 
				
			||||||
             * precedence over NPN and the server does not send an NPN extension
 | 
					 | 
				
			||||||
             * to the client.
 | 
					 | 
				
			||||||
             */
 | 
					 | 
				
			||||||
            ALPNProtocols?: string[] | Buffer[] | Uint8Array[] | Buffer | Uint8Array,
 | 
					 | 
				
			||||||
            /**
 | 
					 | 
				
			||||||
             * SNICallback(servername, cb) <Function> A function that will be
 | 
					 | 
				
			||||||
             * called if the client supports SNI TLS extension. Two arguments
 | 
					 | 
				
			||||||
             * will be passed when called: servername and cb. SNICallback should
 | 
					 | 
				
			||||||
             * invoke cb(null, ctx), where ctx is a SecureContext instance.
 | 
					 | 
				
			||||||
             * (tls.createSecureContext(...) can be used to get a proper
 | 
					 | 
				
			||||||
             * SecureContext.) If SNICallback wasn't provided the default callback
 | 
					 | 
				
			||||||
             * with high-level API will be used (see below).
 | 
					 | 
				
			||||||
             */
 | 
					 | 
				
			||||||
            SNICallback?: (servername: string, cb: (err: Error | null, ctx: SecureContext) => void) => void,
 | 
					 | 
				
			||||||
            /**
 | 
					 | 
				
			||||||
             * An optional Buffer instance containing a TLS session.
 | 
					 | 
				
			||||||
             */
 | 
					 | 
				
			||||||
            session?: Buffer,
 | 
					 | 
				
			||||||
            /**
 | 
					 | 
				
			||||||
             * If true, specifies that the OCSP status request extension will be
 | 
					 | 
				
			||||||
             * added to the client hello and an 'OCSPResponse' event will be
 | 
					 | 
				
			||||||
             * emitted on the socket before establishing a secure communication
 | 
					 | 
				
			||||||
             */
 | 
					 | 
				
			||||||
            requestOCSP?: boolean
 | 
					 | 
				
			||||||
        });
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * A boolean that is true if the peer certificate was signed by one of the specified CAs, otherwise false.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        authorized: boolean;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The reason why the peer's certificate has not been verified.
 | 
					 | 
				
			||||||
         * This property becomes available only when tlsSocket.authorized === false.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        authorizationError: Error;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Static boolean value, always true.
 | 
					 | 
				
			||||||
         * May be used to distinguish TLS sockets from regular ones.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        encrypted: boolean;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * String containing the selected ALPN protocol.
 | 
					 | 
				
			||||||
         * When ALPN has no selected protocol, tlsSocket.alpnProtocol equals false.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        alpnProtocol?: string;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Returns an object representing the cipher name and the SSL/TLS protocol version of the current connection.
 | 
					 | 
				
			||||||
         * @returns Returns an object representing the cipher name
 | 
					 | 
				
			||||||
         * and the SSL/TLS protocol version of the current connection.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        getCipher(): CipherNameAndProtocol;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Returns an object representing the peer's certificate.
 | 
					 | 
				
			||||||
         * The returned object has some properties corresponding to the field of the certificate.
 | 
					 | 
				
			||||||
         * If detailed argument is true the full chain with issuer property will be returned,
 | 
					 | 
				
			||||||
         * if false only the top certificate without issuer property.
 | 
					 | 
				
			||||||
         * If the peer does not provide a certificate, it returns null or an empty object.
 | 
					 | 
				
			||||||
         * @param detailed - If true; the full chain with issuer property will be returned.
 | 
					 | 
				
			||||||
         * @returns An object representing the peer's certificate.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        getPeerCertificate(detailed: true): DetailedPeerCertificate;
 | 
					 | 
				
			||||||
        getPeerCertificate(detailed?: false): PeerCertificate;
 | 
					 | 
				
			||||||
        getPeerCertificate(detailed?: boolean): PeerCertificate | DetailedPeerCertificate;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Returns a string containing the negotiated SSL/TLS protocol version of the current connection.
 | 
					 | 
				
			||||||
         * The value `'unknown'` will be returned for connected sockets that have not completed the handshaking process.
 | 
					 | 
				
			||||||
         * The value `null` will be returned for server sockets or disconnected client sockets.
 | 
					 | 
				
			||||||
         * See https://www.openssl.org/docs/man1.0.2/ssl/SSL_get_version.html for more information.
 | 
					 | 
				
			||||||
         * @returns negotiated SSL/TLS protocol version of the current connection
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        getProtocol(): string | null;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Could be used to speed up handshake establishment when reconnecting to the server.
 | 
					 | 
				
			||||||
         * @returns ASN.1 encoded TLS session or undefined if none was negotiated.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        getSession(): Buffer | undefined;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * NOTE: Works only with client TLS sockets.
 | 
					 | 
				
			||||||
         * Useful only for debugging, for session reuse provide session option to tls.connect().
 | 
					 | 
				
			||||||
         * @returns TLS session ticket or undefined if none was negotiated.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        getTLSTicket(): Buffer | undefined;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Initiate TLS renegotiation process.
 | 
					 | 
				
			||||||
         *
 | 
					 | 
				
			||||||
         * NOTE: Can be used to request peer's certificate after the secure connection has been established.
 | 
					 | 
				
			||||||
         * ANOTHER NOTE: When running as the server, socket will be destroyed with an error after handshakeTimeout timeout.
 | 
					 | 
				
			||||||
         * @param options - The options may contain the following fields: rejectUnauthorized,
 | 
					 | 
				
			||||||
         * requestCert (See tls.createServer() for details).
 | 
					 | 
				
			||||||
         * @param callback - callback(err) will be executed with null as err, once the renegotiation
 | 
					 | 
				
			||||||
         * is successfully completed.
 | 
					 | 
				
			||||||
         * @return `undefined` when socket is destroy, `false` if negotiaion can't be initiated.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        renegotiate(options: { rejectUnauthorized?: boolean, requestCert?: boolean }, callback: (err: Error | null) => void): undefined | boolean;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Set maximum TLS fragment size (default and maximum value is: 16384, minimum is: 512).
 | 
					 | 
				
			||||||
         * Smaller fragment size decreases buffering latency on the client: large fragments are buffered by
 | 
					 | 
				
			||||||
         * the TLS layer until the entire fragment is received and its integrity is verified;
 | 
					 | 
				
			||||||
         * large fragments can span multiple roundtrips, and their processing can be delayed due to packet
 | 
					 | 
				
			||||||
         * loss or reordering. However, smaller fragments add extra TLS framing bytes and CPU overhead,
 | 
					 | 
				
			||||||
         * which may decrease overall server throughput.
 | 
					 | 
				
			||||||
         * @param size - TLS fragment size (default and maximum value is: 16384, minimum is: 512).
 | 
					 | 
				
			||||||
         * @returns Returns true on success, false otherwise.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        setMaxSendFragment(size: number): boolean;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * events.EventEmitter
 | 
					 | 
				
			||||||
         * 1. OCSPResponse
 | 
					 | 
				
			||||||
         * 2. secureConnect
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        addListener(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "OCSPResponse", listener: (response: Buffer) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "secureConnect", listener: () => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "session", listener: (session: Buffer) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        emit(event: string | symbol, ...args: any[]): boolean;
 | 
					 | 
				
			||||||
        emit(event: "OCSPResponse", response: Buffer): boolean;
 | 
					 | 
				
			||||||
        emit(event: "secureConnect"): boolean;
 | 
					 | 
				
			||||||
        emit(event: "session", session: Buffer): boolean;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        on(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        on(event: "OCSPResponse", listener: (response: Buffer) => void): this;
 | 
					 | 
				
			||||||
        on(event: "secureConnect", listener: () => void): this;
 | 
					 | 
				
			||||||
        on(event: "session", listener: (session: Buffer) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        once(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        once(event: "OCSPResponse", listener: (response: Buffer) => void): this;
 | 
					 | 
				
			||||||
        once(event: "secureConnect", listener: () => void): this;
 | 
					 | 
				
			||||||
        once(event: "session", listener: (session: Buffer) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        prependListener(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "OCSPResponse", listener: (response: Buffer) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "secureConnect", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "session", listener: (session: Buffer) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        prependOnceListener(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "OCSPResponse", listener: (response: Buffer) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "secureConnect", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "session", listener: (session: Buffer) => void): this;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface TlsOptions extends SecureContextOptions {
 | 
					 | 
				
			||||||
        handshakeTimeout?: number;
 | 
					 | 
				
			||||||
        requestCert?: boolean;
 | 
					 | 
				
			||||||
        rejectUnauthorized?: boolean;
 | 
					 | 
				
			||||||
        NPNProtocols?: string[] | Buffer[] | Uint8Array[] | Buffer | Uint8Array;
 | 
					 | 
				
			||||||
        ALPNProtocols?: string[] | Buffer[] | Uint8Array[] | Buffer | Uint8Array;
 | 
					 | 
				
			||||||
        SNICallback?: (servername: string, cb: (err: Error | null, ctx: SecureContext) => void) => void;
 | 
					 | 
				
			||||||
        sessionTimeout?: number;
 | 
					 | 
				
			||||||
        ticketKeys?: Buffer;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface ConnectionOptions extends SecureContextOptions {
 | 
					 | 
				
			||||||
        host?: string;
 | 
					 | 
				
			||||||
        port?: number;
 | 
					 | 
				
			||||||
        path?: string; // Creates unix socket connection to path. If this option is specified, `host` and `port` are ignored.
 | 
					 | 
				
			||||||
        socket?: net.Socket; // Establish secure connection on a given socket rather than creating a new socket
 | 
					 | 
				
			||||||
        rejectUnauthorized?: boolean; // Defaults to true
 | 
					 | 
				
			||||||
        NPNProtocols?: string[] | Buffer[] | Uint8Array[] | Buffer | Uint8Array;
 | 
					 | 
				
			||||||
        ALPNProtocols?: string[] | Buffer[] | Uint8Array[] | Buffer | Uint8Array;
 | 
					 | 
				
			||||||
        checkServerIdentity?: typeof checkServerIdentity;
 | 
					 | 
				
			||||||
        servername?: string; // SNI TLS Extension
 | 
					 | 
				
			||||||
        session?: Buffer;
 | 
					 | 
				
			||||||
        minDHSize?: number;
 | 
					 | 
				
			||||||
        secureContext?: SecureContext; // If not provided, the entire ConnectionOptions object will be passed to tls.createSecureContext()
 | 
					 | 
				
			||||||
        lookup?: net.LookupFunction;
 | 
					 | 
				
			||||||
        timeout?: number;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    class Server extends net.Server {
 | 
					 | 
				
			||||||
        addContext(hostName: string, credentials: SecureContextOptions): void;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * events.EventEmitter
 | 
					 | 
				
			||||||
         * 1. tlsClientError
 | 
					 | 
				
			||||||
         * 2. newSession
 | 
					 | 
				
			||||||
         * 3. OCSPRequest
 | 
					 | 
				
			||||||
         * 4. resumeSession
 | 
					 | 
				
			||||||
         * 5. secureConnection
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        addListener(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "tlsClientError", listener: (err: Error, tlsSocket: TLSSocket) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "newSession", listener: (sessionId: Buffer, sessionData: Buffer, callback: (err: Error, resp: Buffer) => void) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "OCSPRequest", listener: (certificate: Buffer, issuer: Buffer, callback: (err: Error | null, resp: Buffer) => void) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "resumeSession", listener: (sessionId: Buffer, callback: (err: Error, sessionData: Buffer) => void) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "secureConnection", listener: (tlsSocket: TLSSocket) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        emit(event: string | symbol, ...args: any[]): boolean;
 | 
					 | 
				
			||||||
        emit(event: "tlsClientError", err: Error, tlsSocket: TLSSocket): boolean;
 | 
					 | 
				
			||||||
        emit(event: "newSession", sessionId: Buffer, sessionData: Buffer, callback: (err: Error, resp: Buffer) => void): boolean;
 | 
					 | 
				
			||||||
        emit(event: "OCSPRequest", certificate: Buffer, issuer: Buffer, callback: (err: Error | null, resp: Buffer) => void): boolean;
 | 
					 | 
				
			||||||
        emit(event: "resumeSession", sessionId: Buffer, callback: (err: Error, sessionData: Buffer) => void): boolean;
 | 
					 | 
				
			||||||
        emit(event: "secureConnection", tlsSocket: TLSSocket): boolean;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        on(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        on(event: "tlsClientError", listener: (err: Error, tlsSocket: TLSSocket) => void): this;
 | 
					 | 
				
			||||||
        on(event: "newSession", listener: (sessionId: Buffer, sessionData: Buffer, callback: (err: Error, resp: Buffer) => void) => void): this;
 | 
					 | 
				
			||||||
        on(event: "OCSPRequest", listener: (certificate: Buffer, issuer: Buffer, callback: (err: Error | null, resp: Buffer) => void) => void): this;
 | 
					 | 
				
			||||||
        on(event: "resumeSession", listener: (sessionId: Buffer, callback: (err: Error, sessionData: Buffer) => void) => void): this;
 | 
					 | 
				
			||||||
        on(event: "secureConnection", listener: (tlsSocket: TLSSocket) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        once(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        once(event: "tlsClientError", listener: (err: Error, tlsSocket: TLSSocket) => void): this;
 | 
					 | 
				
			||||||
        once(event: "newSession", listener: (sessionId: Buffer, sessionData: Buffer, callback: (err: Error, resp: Buffer) => void) => void): this;
 | 
					 | 
				
			||||||
        once(event: "OCSPRequest", listener: (certificate: Buffer, issuer: Buffer, callback: (err: Error | null, resp: Buffer) => void) => void): this;
 | 
					 | 
				
			||||||
        once(event: "resumeSession", listener: (sessionId: Buffer, callback: (err: Error, sessionData: Buffer) => void) => void): this;
 | 
					 | 
				
			||||||
        once(event: "secureConnection", listener: (tlsSocket: TLSSocket) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        prependListener(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "tlsClientError", listener: (err: Error, tlsSocket: TLSSocket) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "newSession", listener: (sessionId: Buffer, sessionData: Buffer, callback: (err: Error, resp: Buffer) => void) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "OCSPRequest", listener: (certificate: Buffer, issuer: Buffer, callback: (err: Error | null, resp: Buffer) => void) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "resumeSession", listener: (sessionId: Buffer, callback: (err: Error, sessionData: Buffer) => void) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "secureConnection", listener: (tlsSocket: TLSSocket) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        prependOnceListener(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "tlsClientError", listener: (err: Error, tlsSocket: TLSSocket) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "newSession", listener: (sessionId: Buffer, sessionData: Buffer, callback: (err: Error, resp: Buffer) => void) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "OCSPRequest", listener: (certificate: Buffer, issuer: Buffer, callback: (err: Error | null, resp: Buffer) => void) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "resumeSession", listener: (sessionId: Buffer, callback: (err: Error, sessionData: Buffer) => void) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "secureConnection", listener: (tlsSocket: TLSSocket) => void): this;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface SecurePair {
 | 
					 | 
				
			||||||
        encrypted: TLSSocket;
 | 
					 | 
				
			||||||
        cleartext: TLSSocket;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    type SecureVersion = 'TLSv1.3' | 'TLSv1.2' | 'TLSv1.1' | 'TLSv1';
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface SecureContextOptions {
 | 
					 | 
				
			||||||
        pfx?: string | Buffer | Array<string | Buffer | Object>;
 | 
					 | 
				
			||||||
        key?: string | Buffer | Array<Buffer | Object>;
 | 
					 | 
				
			||||||
        passphrase?: string;
 | 
					 | 
				
			||||||
        cert?: string | Buffer | Array<string | Buffer>;
 | 
					 | 
				
			||||||
        ca?: string | Buffer | Array<string | Buffer>;
 | 
					 | 
				
			||||||
        ciphers?: string;
 | 
					 | 
				
			||||||
        honorCipherOrder?: boolean;
 | 
					 | 
				
			||||||
        ecdhCurve?: string;
 | 
					 | 
				
			||||||
        clientCertEngine?: string;
 | 
					 | 
				
			||||||
        crl?: string | Buffer | Array<string | Buffer>;
 | 
					 | 
				
			||||||
        dhparam?: string | Buffer;
 | 
					 | 
				
			||||||
        secureOptions?: number; // Value is a numeric bitmask of the `SSL_OP_*` options
 | 
					 | 
				
			||||||
        secureProtocol?: string; // SSL Method, e.g. SSLv23_method
 | 
					 | 
				
			||||||
        sessionIdContext?: string;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Optionally set the maximum TLS version to allow. One
 | 
					 | 
				
			||||||
         * of `'TLSv1.3'`, `'TLSv1.2'`, `'TLSv1.1'`, or `'TLSv1'`. Cannot be specified along with the
 | 
					 | 
				
			||||||
         * `secureProtocol` option, use one or the other.
 | 
					 | 
				
			||||||
         * **Default:** `'TLSv1.3'`, unless changed using CLI options. Using
 | 
					 | 
				
			||||||
         * `--tls-max-v1.2` sets the default to `'TLSv1.2'`. Using `--tls-max-v1.3` sets the default to
 | 
					 | 
				
			||||||
         * `'TLSv1.3'`. If multiple of the options are provided, the highest maximum is used.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        maxVersion?: SecureVersion;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Optionally set the minimum TLS version to allow. One
 | 
					 | 
				
			||||||
         * of `'TLSv1.3'`, `'TLSv1.2'`, `'TLSv1.1'`, or `'TLSv1'`. Cannot be specified along with the
 | 
					 | 
				
			||||||
         * `secureProtocol` option, use one or the other.  It is not recommended to use
 | 
					 | 
				
			||||||
         * less than TLSv1.2, but it may be required for interoperability.
 | 
					 | 
				
			||||||
         * **Default:** `'TLSv1.2'`, unless changed using CLI options. Using
 | 
					 | 
				
			||||||
         * `--tls-v1.0` sets the default to `'TLSv1'`. Using `--tls-v1.1` sets the default to
 | 
					 | 
				
			||||||
         * `'TLSv1.1'`. Using `--tls-min-v1.3` sets the default to
 | 
					 | 
				
			||||||
         * 'TLSv1.3'. If multiple of the options are provided, the lowest minimum is used.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        minVersion?: SecureVersion;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface SecureContext {
 | 
					 | 
				
			||||||
        context: any;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    /*
 | 
					 | 
				
			||||||
     * Verifies the certificate `cert` is issued to host `host`.
 | 
					 | 
				
			||||||
     * @host The hostname to verify the certificate against
 | 
					 | 
				
			||||||
     * @cert PeerCertificate representing the peer's certificate
 | 
					 | 
				
			||||||
     *
 | 
					 | 
				
			||||||
     * Returns Error object, populating it with the reason, host and cert on failure.  On success, returns undefined.
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    function checkServerIdentity(host: string, cert: PeerCertificate): Error | undefined;
 | 
					 | 
				
			||||||
    function createServer(secureConnectionListener?: (socket: TLSSocket) => void): Server;
 | 
					 | 
				
			||||||
    function createServer(options: TlsOptions, secureConnectionListener?: (socket: TLSSocket) => void): Server;
 | 
					 | 
				
			||||||
    function connect(options: ConnectionOptions, secureConnectListener?: () => void): TLSSocket;
 | 
					 | 
				
			||||||
    function connect(port: number, host?: string, options?: ConnectionOptions, secureConnectListener?: () => void): TLSSocket;
 | 
					 | 
				
			||||||
    function connect(port: number, options?: ConnectionOptions, secureConnectListener?: () => void): TLSSocket;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * @deprecated
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    function createSecurePair(credentials?: SecureContext, isServer?: boolean, requestCert?: boolean, rejectUnauthorized?: boolean): SecurePair;
 | 
					 | 
				
			||||||
    function createSecureContext(details: SecureContextOptions): SecureContext;
 | 
					 | 
				
			||||||
    function getCiphers(): string[];
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    const DEFAULT_ECDH_CURVE: string;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										61
									
								
								node_modules/@types/node/trace_events.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										61
									
								
								node_modules/@types/node/trace_events.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,61 +0,0 @@
 | 
				
			|||||||
declare module "trace_events" {
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * The `Tracing` object is used to enable or disable tracing for sets of
 | 
					 | 
				
			||||||
     * categories. Instances are created using the
 | 
					 | 
				
			||||||
     * `trace_events.createTracing()` method.
 | 
					 | 
				
			||||||
     *
 | 
					 | 
				
			||||||
     * When created, the `Tracing` object is disabled. Calling the
 | 
					 | 
				
			||||||
     * `tracing.enable()` method adds the categories to the set of enabled trace
 | 
					 | 
				
			||||||
     * event categories. Calling `tracing.disable()` will remove the categories
 | 
					 | 
				
			||||||
     * from the set of enabled trace event categories.
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    export interface Tracing {
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * A comma-separated list of the trace event categories covered by this
 | 
					 | 
				
			||||||
         * `Tracing` object.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        readonly categories: string;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Disables this `Tracing` object.
 | 
					 | 
				
			||||||
         *
 | 
					 | 
				
			||||||
         * Only trace event categories _not_ covered by other enabled `Tracing`
 | 
					 | 
				
			||||||
         * objects and _not_ specified by the `--trace-event-categories` flag
 | 
					 | 
				
			||||||
         * will be disabled.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        disable(): void;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Enables this `Tracing` object for the set of categories covered by
 | 
					 | 
				
			||||||
         * the `Tracing` object.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        enable(): void;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * `true` only if the `Tracing` object has been enabled.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        readonly enabled: boolean;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface CreateTracingOptions {
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * An array of trace category names. Values included in the array are
 | 
					 | 
				
			||||||
         * coerced to a string when possible. An error will be thrown if the
 | 
					 | 
				
			||||||
         * value cannot be coerced.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        categories: string[];
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * Creates and returns a Tracing object for the given set of categories.
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    export function createTracing(options: CreateTracingOptions): Tracing;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * Returns a comma-separated list of all currently-enabled trace event
 | 
					 | 
				
			||||||
     * categories. The current set of enabled trace event categories is
 | 
					 | 
				
			||||||
     * determined by the union of all currently-enabled `Tracing` objects and
 | 
					 | 
				
			||||||
     * any categories enabled using the `--trace-event-categories` flag.
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    export function getEnabledCategories(): string;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										19
									
								
								node_modules/@types/node/ts3.2/globals.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										19
									
								
								node_modules/@types/node/ts3.2/globals.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,19 +0,0 @@
 | 
				
			|||||||
// tslint:disable-next-line:no-bad-reference
 | 
					 | 
				
			||||||
/// <reference path="../globals.d.ts" />
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
declare namespace NodeJS {
 | 
					 | 
				
			||||||
    interface HRTime {
 | 
					 | 
				
			||||||
        bigint(): bigint;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
interface Buffer extends Uint8Array {
 | 
					 | 
				
			||||||
    readBigUInt64BE(offset?: number): bigint;
 | 
					 | 
				
			||||||
    readBigUInt64LE(offset?: number): bigint;
 | 
					 | 
				
			||||||
    readBigInt64BE(offset?: number): bigint;
 | 
					 | 
				
			||||||
    readBigInt64LE(offset?: number): bigint;
 | 
					 | 
				
			||||||
    writeBigInt64BE(value: bigint, offset?: number): number;
 | 
					 | 
				
			||||||
    writeBigInt64LE(value: bigint, offset?: number): number;
 | 
					 | 
				
			||||||
    writeBigUInt64BE(value: bigint, offset?: number): number;
 | 
					 | 
				
			||||||
    writeBigUInt64LE(value: bigint, offset?: number): number;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										20
									
								
								node_modules/@types/node/ts3.2/index.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										20
									
								
								node_modules/@types/node/ts3.2/index.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,20 +0,0 @@
 | 
				
			|||||||
// NOTE: These definitions support NodeJS and TypeScript 3.2.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// NOTE: TypeScript version-specific augmentations can be found in the following paths:
 | 
					 | 
				
			||||||
//          - ~/base.d.ts         - Shared definitions common to all TypeScript versions
 | 
					 | 
				
			||||||
//          - ~/index.d.ts        - Definitions specific to TypeScript 2.1
 | 
					 | 
				
			||||||
//          - ~/ts3.2/index.d.ts  - Definitions specific to TypeScript 3.2
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// Reference required types from the default lib:
 | 
					 | 
				
			||||||
/// <reference lib="es2018" />
 | 
					 | 
				
			||||||
/// <reference lib="esnext.asynciterable" />
 | 
					 | 
				
			||||||
/// <reference lib="esnext.intl" />
 | 
					 | 
				
			||||||
/// <reference lib="esnext.bigint" />
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// Base definitions for all NodeJS modules that are not specific to any version of TypeScript:
 | 
					 | 
				
			||||||
// tslint:disable-next-line:no-bad-reference
 | 
					 | 
				
			||||||
/// <reference path="../base.d.ts" />
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// TypeScript 3.2-specific augmentations:
 | 
					 | 
				
			||||||
/// <reference path="util.d.ts" />
 | 
					 | 
				
			||||||
/// <reference path="globals.d.ts" />
 | 
					 | 
				
			||||||
							
								
								
									
										15
									
								
								node_modules/@types/node/ts3.2/util.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										15
									
								
								node_modules/@types/node/ts3.2/util.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,15 +0,0 @@
 | 
				
			|||||||
// tslint:disable-next-line:no-bad-reference
 | 
					 | 
				
			||||||
/// <reference path="../util.d.ts" />
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
declare module "util" {
 | 
					 | 
				
			||||||
    namespace inspect {
 | 
					 | 
				
			||||||
        const custom: unique symbol;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    namespace promisify {
 | 
					 | 
				
			||||||
        const custom: unique symbol;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    namespace types {
 | 
					 | 
				
			||||||
        function isBigInt64Array(value: any): value is BigInt64Array;
 | 
					 | 
				
			||||||
        function isBigUint64Array(value: any): value is BigUint64Array;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										50
									
								
								node_modules/@types/node/tty.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										50
									
								
								node_modules/@types/node/tty.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,50 +0,0 @@
 | 
				
			|||||||
declare module "tty" {
 | 
					 | 
				
			||||||
    import * as net from "net";
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function isatty(fd: number): boolean;
 | 
					 | 
				
			||||||
    class ReadStream extends net.Socket {
 | 
					 | 
				
			||||||
        isRaw: boolean;
 | 
					 | 
				
			||||||
        setRawMode(mode: boolean): void;
 | 
					 | 
				
			||||||
        isTTY: boolean;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * -1 - to the left from cursor
 | 
					 | 
				
			||||||
     *  0 - the entire line
 | 
					 | 
				
			||||||
     *  1 - to the right from cursor
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    type Direction = -1 | 0 | 1;
 | 
					 | 
				
			||||||
    class WriteStream extends net.Socket {
 | 
					 | 
				
			||||||
        addListener(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "resize", listener: () => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        emit(event: string | symbol, ...args: any[]): boolean;
 | 
					 | 
				
			||||||
        emit(event: "resize"): boolean;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        on(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        on(event: "resize", listener: () => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        once(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        once(event: "resize", listener: () => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        prependListener(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "resize", listener: () => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        prependOnceListener(event: string, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "resize", listener: () => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        clearLine(dir: Direction): void;
 | 
					 | 
				
			||||||
        clearScreenDown(): void;
 | 
					 | 
				
			||||||
        cursorTo(x: number, y: number): void;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * @default `process.env`
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        getColorDepth(env?: {}): number;
 | 
					 | 
				
			||||||
        hasColors(depth?: number): boolean;
 | 
					 | 
				
			||||||
        hasColors(env?: {}): boolean;
 | 
					 | 
				
			||||||
        hasColors(depth: number, env?: {}): boolean;
 | 
					 | 
				
			||||||
        getWindowSize(): [number, number];
 | 
					 | 
				
			||||||
        columns: number;
 | 
					 | 
				
			||||||
        rows: number;
 | 
					 | 
				
			||||||
        isTTY: boolean;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										104
									
								
								node_modules/@types/node/url.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										104
									
								
								node_modules/@types/node/url.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,104 +0,0 @@
 | 
				
			|||||||
declare module "url" {
 | 
					 | 
				
			||||||
    import { ParsedUrlQuery, ParsedUrlQueryInput } from 'querystring';
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface UrlObjectCommon {
 | 
					 | 
				
			||||||
        auth?: string;
 | 
					 | 
				
			||||||
        hash?: string;
 | 
					 | 
				
			||||||
        host?: string;
 | 
					 | 
				
			||||||
        hostname?: string;
 | 
					 | 
				
			||||||
        href?: string;
 | 
					 | 
				
			||||||
        path?: string;
 | 
					 | 
				
			||||||
        pathname?: string;
 | 
					 | 
				
			||||||
        protocol?: string;
 | 
					 | 
				
			||||||
        search?: string;
 | 
					 | 
				
			||||||
        slashes?: boolean;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    // Input to `url.format`
 | 
					 | 
				
			||||||
    interface UrlObject extends UrlObjectCommon {
 | 
					 | 
				
			||||||
        port?: string | number;
 | 
					 | 
				
			||||||
        query?: string | null | ParsedUrlQueryInput;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    // Output of `url.parse`
 | 
					 | 
				
			||||||
    interface Url extends UrlObjectCommon {
 | 
					 | 
				
			||||||
        port?: string;
 | 
					 | 
				
			||||||
        query?: string | null | ParsedUrlQuery;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface UrlWithParsedQuery extends Url {
 | 
					 | 
				
			||||||
        query: ParsedUrlQuery;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface UrlWithStringQuery extends Url {
 | 
					 | 
				
			||||||
        query: string | null;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function parse(urlStr: string): UrlWithStringQuery;
 | 
					 | 
				
			||||||
    function parse(urlStr: string, parseQueryString: false | undefined, slashesDenoteHost?: boolean): UrlWithStringQuery;
 | 
					 | 
				
			||||||
    function parse(urlStr: string, parseQueryString: true, slashesDenoteHost?: boolean): UrlWithParsedQuery;
 | 
					 | 
				
			||||||
    function parse(urlStr: string, parseQueryString: boolean, slashesDenoteHost?: boolean): Url;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function format(URL: URL, options?: URLFormatOptions): string;
 | 
					 | 
				
			||||||
    function format(urlObject: UrlObject | string): string;
 | 
					 | 
				
			||||||
    function resolve(from: string, to: string): string;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function domainToASCII(domain: string): string;
 | 
					 | 
				
			||||||
    function domainToUnicode(domain: string): string;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * This function ensures the correct decodings of percent-encoded characters as
 | 
					 | 
				
			||||||
     * well as ensuring a cross-platform valid absolute path string.
 | 
					 | 
				
			||||||
     * @param url The file URL string or URL object to convert to a path.
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    function fileURLToPath(url: string | URL): string;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * This function ensures that path is resolved absolutely, and that the URL
 | 
					 | 
				
			||||||
     * control characters are correctly encoded when converting into a File URL.
 | 
					 | 
				
			||||||
     * @param url The path to convert to a File URL.
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    function pathToFileURL(url: string): URL;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface URLFormatOptions {
 | 
					 | 
				
			||||||
        auth?: boolean;
 | 
					 | 
				
			||||||
        fragment?: boolean;
 | 
					 | 
				
			||||||
        search?: boolean;
 | 
					 | 
				
			||||||
        unicode?: boolean;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    class URL {
 | 
					 | 
				
			||||||
        constructor(input: string, base?: string | URL);
 | 
					 | 
				
			||||||
        hash: string;
 | 
					 | 
				
			||||||
        host: string;
 | 
					 | 
				
			||||||
        hostname: string;
 | 
					 | 
				
			||||||
        href: string;
 | 
					 | 
				
			||||||
        readonly origin: string;
 | 
					 | 
				
			||||||
        password: string;
 | 
					 | 
				
			||||||
        pathname: string;
 | 
					 | 
				
			||||||
        port: string;
 | 
					 | 
				
			||||||
        protocol: string;
 | 
					 | 
				
			||||||
        search: string;
 | 
					 | 
				
			||||||
        readonly searchParams: URLSearchParams;
 | 
					 | 
				
			||||||
        username: string;
 | 
					 | 
				
			||||||
        toString(): string;
 | 
					 | 
				
			||||||
        toJSON(): string;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    class URLSearchParams implements Iterable<[string, string]> {
 | 
					 | 
				
			||||||
        constructor(init?: URLSearchParams | string | { [key: string]: string | string[] | undefined } | Iterable<[string, string]> | Array<[string, string]>);
 | 
					 | 
				
			||||||
        append(name: string, value: string): void;
 | 
					 | 
				
			||||||
        delete(name: string): void;
 | 
					 | 
				
			||||||
        entries(): IterableIterator<[string, string]>;
 | 
					 | 
				
			||||||
        forEach(callback: (value: string, name: string, searchParams: this) => void): void;
 | 
					 | 
				
			||||||
        get(name: string): string | null;
 | 
					 | 
				
			||||||
        getAll(name: string): string[];
 | 
					 | 
				
			||||||
        has(name: string): boolean;
 | 
					 | 
				
			||||||
        keys(): IterableIterator<string>;
 | 
					 | 
				
			||||||
        set(name: string, value: string): void;
 | 
					 | 
				
			||||||
        sort(): void;
 | 
					 | 
				
			||||||
        toString(): string;
 | 
					 | 
				
			||||||
        values(): IterableIterator<string>;
 | 
					 | 
				
			||||||
        [Symbol.iterator](): IterableIterator<[string, string]>;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										165
									
								
								node_modules/@types/node/util.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										165
									
								
								node_modules/@types/node/util.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,165 +0,0 @@
 | 
				
			|||||||
declare module "util" {
 | 
					 | 
				
			||||||
    interface InspectOptions extends NodeJS.InspectOptions { }
 | 
					 | 
				
			||||||
    function format(format: any, ...param: any[]): string;
 | 
					 | 
				
			||||||
    function formatWithOptions(inspectOptions: InspectOptions, format: string, ...param: any[]): string;
 | 
					 | 
				
			||||||
    /** @deprecated since v0.11.3 - use a third party module instead. */
 | 
					 | 
				
			||||||
    function log(string: string): void;
 | 
					 | 
				
			||||||
    function inspect(object: any, showHidden?: boolean, depth?: number | null, color?: boolean): string;
 | 
					 | 
				
			||||||
    function inspect(object: any, options: InspectOptions): string;
 | 
					 | 
				
			||||||
    namespace inspect {
 | 
					 | 
				
			||||||
        let colors: {
 | 
					 | 
				
			||||||
            [color: string]: [number, number] | undefined
 | 
					 | 
				
			||||||
        };
 | 
					 | 
				
			||||||
        let styles: {
 | 
					 | 
				
			||||||
            [style: string]: string | undefined
 | 
					 | 
				
			||||||
        };
 | 
					 | 
				
			||||||
        let defaultOptions: InspectOptions;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Allows changing inspect settings from the repl.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        let replDefaults: InspectOptions;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    /** @deprecated since v4.0.0 - use `Array.isArray()` instead. */
 | 
					 | 
				
			||||||
    function isArray(object: any): object is any[];
 | 
					 | 
				
			||||||
    /** @deprecated since v4.0.0 - use `util.types.isRegExp()` instead. */
 | 
					 | 
				
			||||||
    function isRegExp(object: any): object is RegExp;
 | 
					 | 
				
			||||||
    /** @deprecated since v4.0.0 - use `util.types.isDate()` instead. */
 | 
					 | 
				
			||||||
    function isDate(object: any): object is Date;
 | 
					 | 
				
			||||||
    /** @deprecated since v4.0.0 - use `util.types.isNativeError()` instead. */
 | 
					 | 
				
			||||||
    function isError(object: any): object is Error;
 | 
					 | 
				
			||||||
    function inherits(constructor: any, superConstructor: any): void;
 | 
					 | 
				
			||||||
    function debuglog(key: string): (msg: string, ...param: any[]) => void;
 | 
					 | 
				
			||||||
    /** @deprecated since v4.0.0 - use `typeof value === 'boolean'` instead. */
 | 
					 | 
				
			||||||
    function isBoolean(object: any): object is boolean;
 | 
					 | 
				
			||||||
    /** @deprecated since v4.0.0 - use `Buffer.isBuffer()` instead. */
 | 
					 | 
				
			||||||
    function isBuffer(object: any): object is Buffer;
 | 
					 | 
				
			||||||
    /** @deprecated since v4.0.0 - use `typeof value === 'function'` instead. */
 | 
					 | 
				
			||||||
    function isFunction(object: any): boolean;
 | 
					 | 
				
			||||||
    /** @deprecated since v4.0.0 - use `value === null` instead. */
 | 
					 | 
				
			||||||
    function isNull(object: any): object is null;
 | 
					 | 
				
			||||||
    /** @deprecated since v4.0.0 - use `value === null || value === undefined` instead. */
 | 
					 | 
				
			||||||
    function isNullOrUndefined(object: any): object is null | undefined;
 | 
					 | 
				
			||||||
    /** @deprecated since v4.0.0 - use `typeof value === 'number'` instead. */
 | 
					 | 
				
			||||||
    function isNumber(object: any): object is number;
 | 
					 | 
				
			||||||
    /** @deprecated since v4.0.0 - use `value !== null && typeof value === 'object'` instead. */
 | 
					 | 
				
			||||||
    function isObject(object: any): boolean;
 | 
					 | 
				
			||||||
    /** @deprecated since v4.0.0 - use `(typeof value !== 'object' && typeof value !== 'function') || value === null` instead. */
 | 
					 | 
				
			||||||
    function isPrimitive(object: any): boolean;
 | 
					 | 
				
			||||||
    /** @deprecated since v4.0.0 - use `typeof value === 'string'` instead. */
 | 
					 | 
				
			||||||
    function isString(object: any): object is string;
 | 
					 | 
				
			||||||
    /** @deprecated since v4.0.0 - use `typeof value === 'symbol'` instead. */
 | 
					 | 
				
			||||||
    function isSymbol(object: any): object is symbol;
 | 
					 | 
				
			||||||
    /** @deprecated since v4.0.0 - use `value === undefined` instead. */
 | 
					 | 
				
			||||||
    function isUndefined(object: any): object is undefined;
 | 
					 | 
				
			||||||
    function deprecate<T extends Function>(fn: T, message: string): T;
 | 
					 | 
				
			||||||
    function isDeepStrictEqual(val1: any, val2: any): boolean;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface CustomPromisify<TCustom extends Function> extends Function {
 | 
					 | 
				
			||||||
        __promisify__: TCustom;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function callbackify(fn: () => Promise<void>): (callback: (err: NodeJS.ErrnoException) => void) => void;
 | 
					 | 
				
			||||||
    function callbackify<TResult>(fn: () => Promise<TResult>): (callback: (err: NodeJS.ErrnoException, result: TResult) => void) => void;
 | 
					 | 
				
			||||||
    function callbackify<T1>(fn: (arg1: T1) => Promise<void>): (arg1: T1, callback: (err: NodeJS.ErrnoException) => void) => void;
 | 
					 | 
				
			||||||
    function callbackify<T1, TResult>(fn: (arg1: T1) => Promise<TResult>): (arg1: T1, callback: (err: NodeJS.ErrnoException, result: TResult) => void) => void;
 | 
					 | 
				
			||||||
    function callbackify<T1, T2>(fn: (arg1: T1, arg2: T2) => Promise<void>): (arg1: T1, arg2: T2, callback: (err: NodeJS.ErrnoException) => void) => void;
 | 
					 | 
				
			||||||
    function callbackify<T1, T2, TResult>(fn: (arg1: T1, arg2: T2) => Promise<TResult>): (arg1: T1, arg2: T2, callback: (err: NodeJS.ErrnoException | null, result: TResult) => void) => void;
 | 
					 | 
				
			||||||
    function callbackify<T1, T2, T3>(fn: (arg1: T1, arg2: T2, arg3: T3) => Promise<void>): (arg1: T1, arg2: T2, arg3: T3, callback: (err: NodeJS.ErrnoException) => void) => void;
 | 
					 | 
				
			||||||
    function callbackify<T1, T2, T3, TResult>(
 | 
					 | 
				
			||||||
        fn: (arg1: T1, arg2: T2, arg3: T3) => Promise<TResult>): (arg1: T1, arg2: T2, arg3: T3, callback: (err: NodeJS.ErrnoException | null, result: TResult) => void) => void;
 | 
					 | 
				
			||||||
    function callbackify<T1, T2, T3, T4>(
 | 
					 | 
				
			||||||
        fn: (arg1: T1, arg2: T2, arg3: T3, arg4: T4) => Promise<void>): (arg1: T1, arg2: T2, arg3: T3, arg4: T4, callback: (err: NodeJS.ErrnoException) => void) => void;
 | 
					 | 
				
			||||||
    function callbackify<T1, T2, T3, T4, TResult>(
 | 
					 | 
				
			||||||
        fn: (arg1: T1, arg2: T2, arg3: T3, arg4: T4) => Promise<TResult>): (arg1: T1, arg2: T2, arg3: T3, arg4: T4, callback: (err: NodeJS.ErrnoException | null, result: TResult) => void) => void;
 | 
					 | 
				
			||||||
    function callbackify<T1, T2, T3, T4, T5>(
 | 
					 | 
				
			||||||
        fn: (arg1: T1, arg2: T2, arg3: T3, arg4: T4, arg5: T5) => Promise<void>): (arg1: T1, arg2: T2, arg3: T3, arg4: T4, arg5: T5, callback: (err: NodeJS.ErrnoException) => void) => void;
 | 
					 | 
				
			||||||
    function callbackify<T1, T2, T3, T4, T5, TResult>(
 | 
					 | 
				
			||||||
        fn: (arg1: T1, arg2: T2, arg3: T3, arg4: T4, arg5: T5) => Promise<TResult>,
 | 
					 | 
				
			||||||
    ): (arg1: T1, arg2: T2, arg3: T3, arg4: T4, arg5: T5, callback: (err: NodeJS.ErrnoException | null, result: TResult) => void) => void;
 | 
					 | 
				
			||||||
    function callbackify<T1, T2, T3, T4, T5, T6>(
 | 
					 | 
				
			||||||
        fn: (arg1: T1, arg2: T2, arg3: T3, arg4: T4, arg5: T5, arg6: T6) => Promise<void>,
 | 
					 | 
				
			||||||
    ): (arg1: T1, arg2: T2, arg3: T3, arg4: T4, arg5: T5, arg6: T6, callback: (err: NodeJS.ErrnoException) => void) => void;
 | 
					 | 
				
			||||||
    function callbackify<T1, T2, T3, T4, T5, T6, TResult>(
 | 
					 | 
				
			||||||
        fn: (arg1: T1, arg2: T2, arg3: T3, arg4: T4, arg5: T5, arg6: T6) => Promise<TResult>
 | 
					 | 
				
			||||||
    ): (arg1: T1, arg2: T2, arg3: T3, arg4: T4, arg5: T5, arg6: T6, callback: (err: NodeJS.ErrnoException | null, result: TResult) => void) => void;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function promisify<TCustom extends Function>(fn: CustomPromisify<TCustom>): TCustom;
 | 
					 | 
				
			||||||
    function promisify<TResult>(fn: (callback: (err: Error | null, result: TResult) => void) => void): () => Promise<TResult>;
 | 
					 | 
				
			||||||
    function promisify(fn: (callback: (err?: Error | null) => void) => void): () => Promise<void>;
 | 
					 | 
				
			||||||
    function promisify<T1, TResult>(fn: (arg1: T1, callback: (err: Error | null, result: TResult) => void) => void): (arg1: T1) => Promise<TResult>;
 | 
					 | 
				
			||||||
    function promisify<T1>(fn: (arg1: T1, callback: (err?: Error | null) => void) => void): (arg1: T1) => Promise<void>;
 | 
					 | 
				
			||||||
    function promisify<T1, T2, TResult>(fn: (arg1: T1, arg2: T2, callback: (err: Error | null, result: TResult) => void) => void): (arg1: T1, arg2: T2) => Promise<TResult>;
 | 
					 | 
				
			||||||
    function promisify<T1, T2>(fn: (arg1: T1, arg2: T2, callback: (err?: Error | null) => void) => void): (arg1: T1, arg2: T2) => Promise<void>;
 | 
					 | 
				
			||||||
    function promisify<T1, T2, T3, TResult>(fn: (arg1: T1, arg2: T2, arg3: T3, callback: (err: Error | null, result: TResult) => void) => void): (arg1: T1, arg2: T2, arg3: T3) => Promise<TResult>;
 | 
					 | 
				
			||||||
    function promisify<T1, T2, T3>(fn: (arg1: T1, arg2: T2, arg3: T3, callback: (err?: Error | null) => void) => void): (arg1: T1, arg2: T2, arg3: T3) => Promise<void>;
 | 
					 | 
				
			||||||
    function promisify<T1, T2, T3, T4, TResult>(
 | 
					 | 
				
			||||||
        fn: (arg1: T1, arg2: T2, arg3: T3, arg4: T4, callback: (err: Error | null, result: TResult) => void) => void,
 | 
					 | 
				
			||||||
    ): (arg1: T1, arg2: T2, arg3: T3, arg4: T4) => Promise<TResult>;
 | 
					 | 
				
			||||||
    function promisify<T1, T2, T3, T4>(fn: (arg1: T1, arg2: T2, arg3: T3, arg4: T4, callback: (err?: Error | null) => void) => void): (arg1: T1, arg2: T2, arg3: T3, arg4: T4) => Promise<void>;
 | 
					 | 
				
			||||||
    function promisify<T1, T2, T3, T4, T5, TResult>(
 | 
					 | 
				
			||||||
        fn: (arg1: T1, arg2: T2, arg3: T3, arg4: T4, arg5: T5, callback: (err: Error | null, result: TResult) => void) => void,
 | 
					 | 
				
			||||||
    ): (arg1: T1, arg2: T2, arg3: T3, arg4: T4, arg5: T5) => Promise<TResult>;
 | 
					 | 
				
			||||||
    function promisify<T1, T2, T3, T4, T5>(
 | 
					 | 
				
			||||||
        fn: (arg1: T1, arg2: T2, arg3: T3, arg4: T4, arg5: T5, callback: (err?: Error | null) => void) => void,
 | 
					 | 
				
			||||||
    ): (arg1: T1, arg2: T2, arg3: T3, arg4: T4, arg5: T5) => Promise<void>;
 | 
					 | 
				
			||||||
    function promisify(fn: Function): Function;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    namespace types {
 | 
					 | 
				
			||||||
        function isAnyArrayBuffer(object: any): boolean;
 | 
					 | 
				
			||||||
        function isArgumentsObject(object: any): object is IArguments;
 | 
					 | 
				
			||||||
        function isArrayBuffer(object: any): object is ArrayBuffer;
 | 
					 | 
				
			||||||
        function isAsyncFunction(object: any): boolean;
 | 
					 | 
				
			||||||
        function isBooleanObject(object: any): object is Boolean;
 | 
					 | 
				
			||||||
        function isBoxedPrimitive(object: any): object is (Number | Boolean | String | Symbol /* | Object(BigInt) | Object(Symbol) */);
 | 
					 | 
				
			||||||
        function isDataView(object: any): object is DataView;
 | 
					 | 
				
			||||||
        function isDate(object: any): object is Date;
 | 
					 | 
				
			||||||
        function isExternal(object: any): boolean;
 | 
					 | 
				
			||||||
        function isFloat32Array(object: any): object is Float32Array;
 | 
					 | 
				
			||||||
        function isFloat64Array(object: any): object is Float64Array;
 | 
					 | 
				
			||||||
        function isGeneratorFunction(object: any): boolean;
 | 
					 | 
				
			||||||
        function isGeneratorObject(object: any): boolean;
 | 
					 | 
				
			||||||
        function isInt8Array(object: any): object is Int8Array;
 | 
					 | 
				
			||||||
        function isInt16Array(object: any): object is Int16Array;
 | 
					 | 
				
			||||||
        function isInt32Array(object: any): object is Int32Array;
 | 
					 | 
				
			||||||
        function isMap(object: any): boolean;
 | 
					 | 
				
			||||||
        function isMapIterator(object: any): boolean;
 | 
					 | 
				
			||||||
        function isModuleNamespaceObject(value: any): boolean;
 | 
					 | 
				
			||||||
        function isNativeError(object: any): object is Error;
 | 
					 | 
				
			||||||
        function isNumberObject(object: any): object is Number;
 | 
					 | 
				
			||||||
        function isPromise(object: any): boolean;
 | 
					 | 
				
			||||||
        function isProxy(object: any): boolean;
 | 
					 | 
				
			||||||
        function isRegExp(object: any): object is RegExp;
 | 
					 | 
				
			||||||
        function isSet(object: any): boolean;
 | 
					 | 
				
			||||||
        function isSetIterator(object: any): boolean;
 | 
					 | 
				
			||||||
        function isSharedArrayBuffer(object: any): boolean;
 | 
					 | 
				
			||||||
        function isStringObject(object: any): boolean;
 | 
					 | 
				
			||||||
        function isSymbolObject(object: any): boolean;
 | 
					 | 
				
			||||||
        function isTypedArray(object: any): object is NodeJS.TypedArray;
 | 
					 | 
				
			||||||
        function isUint8Array(object: any): object is Uint8Array;
 | 
					 | 
				
			||||||
        function isUint8ClampedArray(object: any): object is Uint8ClampedArray;
 | 
					 | 
				
			||||||
        function isUint16Array(object: any): object is Uint16Array;
 | 
					 | 
				
			||||||
        function isUint32Array(object: any): object is Uint32Array;
 | 
					 | 
				
			||||||
        function isWeakMap(object: any): boolean;
 | 
					 | 
				
			||||||
        function isWeakSet(object: any): boolean;
 | 
					 | 
				
			||||||
        function isWebAssemblyCompiledModule(object: any): boolean;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    class TextDecoder {
 | 
					 | 
				
			||||||
        readonly encoding: string;
 | 
					 | 
				
			||||||
        readonly fatal: boolean;
 | 
					 | 
				
			||||||
        readonly ignoreBOM: boolean;
 | 
					 | 
				
			||||||
        constructor(
 | 
					 | 
				
			||||||
          encoding?: string,
 | 
					 | 
				
			||||||
          options?: { fatal?: boolean; ignoreBOM?: boolean }
 | 
					 | 
				
			||||||
        );
 | 
					 | 
				
			||||||
        decode(
 | 
					 | 
				
			||||||
          input?: NodeJS.TypedArray | DataView | ArrayBuffer | null,
 | 
					 | 
				
			||||||
          options?: { stream?: boolean }
 | 
					 | 
				
			||||||
        ): string;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    class TextEncoder {
 | 
					 | 
				
			||||||
        readonly encoding: string;
 | 
					 | 
				
			||||||
        encode(input?: string): Uint8Array;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										50
									
								
								node_modules/@types/node/v8.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										50
									
								
								node_modules/@types/node/v8.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,50 +0,0 @@
 | 
				
			|||||||
declare module "v8" {
 | 
					 | 
				
			||||||
    import { Readable } from "stream";
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface HeapSpaceInfo {
 | 
					 | 
				
			||||||
        space_name: string;
 | 
					 | 
				
			||||||
        space_size: number;
 | 
					 | 
				
			||||||
        space_used_size: number;
 | 
					 | 
				
			||||||
        space_available_size: number;
 | 
					 | 
				
			||||||
        physical_space_size: number;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    // ** Signifies if the --zap_code_space option is enabled or not.  1 == enabled, 0 == disabled. */
 | 
					 | 
				
			||||||
    type DoesZapCodeSpaceFlag = 0 | 1;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface HeapInfo {
 | 
					 | 
				
			||||||
        total_heap_size: number;
 | 
					 | 
				
			||||||
        total_heap_size_executable: number;
 | 
					 | 
				
			||||||
        total_physical_size: number;
 | 
					 | 
				
			||||||
        total_available_size: number;
 | 
					 | 
				
			||||||
        used_heap_size: number;
 | 
					 | 
				
			||||||
        heap_size_limit: number;
 | 
					 | 
				
			||||||
        malloced_memory: number;
 | 
					 | 
				
			||||||
        peak_malloced_memory: number;
 | 
					 | 
				
			||||||
        does_zap_garbage: DoesZapCodeSpaceFlag;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function getHeapStatistics(): HeapInfo;
 | 
					 | 
				
			||||||
    function getHeapSpaceStatistics(): HeapSpaceInfo[];
 | 
					 | 
				
			||||||
    function setFlagsFromString(flags: string): void;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * Generates a snapshot of the current V8 heap and returns a Readable
 | 
					 | 
				
			||||||
     * Stream that may be used to read the JSON serialized representation.
 | 
					 | 
				
			||||||
     * This conversation was marked as resolved by joyeecheung
 | 
					 | 
				
			||||||
     * This JSON stream format is intended to be used with tools such as
 | 
					 | 
				
			||||||
     * Chrome DevTools. The JSON schema is undocumented and specific to the
 | 
					 | 
				
			||||||
     * V8 engine, and may change from one version of V8 to the next.
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    function getHeapSnapshot(): Readable;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     *
 | 
					 | 
				
			||||||
     * @param fileName The file path where the V8 heap snapshot is to be
 | 
					 | 
				
			||||||
     * saved. If not specified, a file name with the pattern
 | 
					 | 
				
			||||||
     * `'Heap-${yyyymmdd}-${hhmmss}-${pid}-${thread_id}.heapsnapshot'` will be
 | 
					 | 
				
			||||||
     * generated, where `{pid}` will be the PID of the Node.js process,
 | 
					 | 
				
			||||||
     * `{thread_id}` will be `0` when `writeHeapSnapshot()` is called from
 | 
					 | 
				
			||||||
     * the main Node.js thread or the id of a worker thread.
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    function writeHeapSnapshot(fileName?: string): string;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										64
									
								
								node_modules/@types/node/vm.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										64
									
								
								node_modules/@types/node/vm.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,64 +0,0 @@
 | 
				
			|||||||
declare module "vm" {
 | 
					 | 
				
			||||||
    interface Context {
 | 
					 | 
				
			||||||
        [key: string]: any;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    interface BaseOptions {
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Specifies the filename used in stack traces produced by this script.
 | 
					 | 
				
			||||||
         * Default: `''`.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        filename?: string;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Specifies the line number offset that is displayed in stack traces produced by this script.
 | 
					 | 
				
			||||||
         * Default: `0`.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        lineOffset?: number;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Specifies the column number offset that is displayed in stack traces produced by this script.
 | 
					 | 
				
			||||||
         * Default: `0`
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        columnOffset?: number;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    interface ScriptOptions extends BaseOptions {
 | 
					 | 
				
			||||||
        displayErrors?: boolean;
 | 
					 | 
				
			||||||
        timeout?: number;
 | 
					 | 
				
			||||||
        cachedData?: Buffer;
 | 
					 | 
				
			||||||
        produceCachedData?: boolean;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    interface RunningScriptOptions extends BaseOptions {
 | 
					 | 
				
			||||||
        displayErrors?: boolean;
 | 
					 | 
				
			||||||
        timeout?: number;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    interface CompileFunctionOptions extends BaseOptions {
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Provides an optional data with V8's code cache data for the supplied source.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        cachedData?: Buffer;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Specifies whether to produce new cache data.
 | 
					 | 
				
			||||||
         * Default: `false`,
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        produceCachedData?: boolean;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * The sandbox/context in which the said function should be compiled in.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        parsingContext?: Context;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * An array containing a collection of context extensions (objects wrapping the current scope) to be applied while compiling
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        contextExtensions?: Object[];
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    class Script {
 | 
					 | 
				
			||||||
        constructor(code: string, options?: ScriptOptions);
 | 
					 | 
				
			||||||
        runInContext(contextifiedSandbox: Context, options?: RunningScriptOptions): any;
 | 
					 | 
				
			||||||
        runInNewContext(sandbox?: Context, options?: RunningScriptOptions): any;
 | 
					 | 
				
			||||||
        runInThisContext(options?: RunningScriptOptions): any;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    function createContext(sandbox?: Context): Context;
 | 
					 | 
				
			||||||
    function isContext(sandbox: Context): boolean;
 | 
					 | 
				
			||||||
    function runInContext(code: string, contextifiedSandbox: Context, options?: RunningScriptOptions | string): any;
 | 
					 | 
				
			||||||
    function runInNewContext(code: string, sandbox?: Context, options?: RunningScriptOptions | string): any;
 | 
					 | 
				
			||||||
    function runInThisContext(code: string, options?: RunningScriptOptions | string): any;
 | 
					 | 
				
			||||||
    function compileFunction(code: string, params: string[], options: CompileFunctionOptions): Function;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										141
									
								
								node_modules/@types/node/worker_threads.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										141
									
								
								node_modules/@types/node/worker_threads.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,141 +0,0 @@
 | 
				
			|||||||
declare module "worker_threads" {
 | 
					 | 
				
			||||||
    import { Context } from "vm";
 | 
					 | 
				
			||||||
    import { EventEmitter } from "events";
 | 
					 | 
				
			||||||
    import { Readable, Writable } from "stream";
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    const isMainThread: boolean;
 | 
					 | 
				
			||||||
    const parentPort: null | MessagePort;
 | 
					 | 
				
			||||||
    const threadId: number;
 | 
					 | 
				
			||||||
    const workerData: any;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    class MessageChannel {
 | 
					 | 
				
			||||||
        readonly port1: MessagePort;
 | 
					 | 
				
			||||||
        readonly port2: MessagePort;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    class MessagePort extends EventEmitter {
 | 
					 | 
				
			||||||
        close(): void;
 | 
					 | 
				
			||||||
        postMessage(value: any, transferList?: Array<ArrayBuffer | MessagePort>): void;
 | 
					 | 
				
			||||||
        ref(): void;
 | 
					 | 
				
			||||||
        unref(): void;
 | 
					 | 
				
			||||||
        start(): void;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        addListener(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "message", listener: (value: any) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        emit(event: "close"): boolean;
 | 
					 | 
				
			||||||
        emit(event: "message", value: any): boolean;
 | 
					 | 
				
			||||||
        emit(event: string | symbol, ...args: any[]): boolean;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        on(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
        on(event: "message", listener: (value: any) => void): this;
 | 
					 | 
				
			||||||
        on(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        once(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
        once(event: "message", listener: (value: any) => void): this;
 | 
					 | 
				
			||||||
        once(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        prependListener(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "message", listener: (value: any) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        prependOnceListener(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "message", listener: (value: any) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        removeListener(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
        removeListener(event: "message", listener: (value: any) => void): this;
 | 
					 | 
				
			||||||
        removeListener(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        off(event: "close", listener: () => void): this;
 | 
					 | 
				
			||||||
        off(event: "message", listener: (value: any) => void): this;
 | 
					 | 
				
			||||||
        off(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface WorkerOptions {
 | 
					 | 
				
			||||||
        eval?: boolean;
 | 
					 | 
				
			||||||
        workerData?: any;
 | 
					 | 
				
			||||||
        stdin?: boolean;
 | 
					 | 
				
			||||||
        stdout?: boolean;
 | 
					 | 
				
			||||||
        stderr?: boolean;
 | 
					 | 
				
			||||||
        execArgv?: string[];
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    class Worker extends EventEmitter {
 | 
					 | 
				
			||||||
        readonly stdin: Writable | null;
 | 
					 | 
				
			||||||
        readonly stdout: Readable;
 | 
					 | 
				
			||||||
        readonly stderr: Readable;
 | 
					 | 
				
			||||||
        readonly threadId: number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        constructor(filename: string, options?: WorkerOptions);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        postMessage(value: any, transferList?: Array<ArrayBuffer | MessagePort>): void;
 | 
					 | 
				
			||||||
        ref(): void;
 | 
					 | 
				
			||||||
        unref(): void;
 | 
					 | 
				
			||||||
        terminate(callback?: (err: Error, exitCode: number) => void): void;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * Transfer a `MessagePort` to a different `vm` Context. The original `port`
 | 
					 | 
				
			||||||
         * object will be rendered unusable, and the returned `MessagePort` instance will
 | 
					 | 
				
			||||||
         * take its place.
 | 
					 | 
				
			||||||
         *
 | 
					 | 
				
			||||||
         * The returned `MessagePort` will be an object in the target context, and will
 | 
					 | 
				
			||||||
         * inherit from its global `Object` class. Objects passed to the
 | 
					 | 
				
			||||||
         * `port.onmessage()` listener will also be created in the target context
 | 
					 | 
				
			||||||
         * and inherit from its global `Object` class.
 | 
					 | 
				
			||||||
         *
 | 
					 | 
				
			||||||
         * However, the created `MessagePort` will no longer inherit from
 | 
					 | 
				
			||||||
         * `EventEmitter`, and only `port.onmessage()` can be used to receive
 | 
					 | 
				
			||||||
         * events using it.
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        moveMessagePortToContext(port: MessagePort, context: Context): MessagePort;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        addListener(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "exit", listener: (exitCode: number) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "message", listener: (value: any) => void): this;
 | 
					 | 
				
			||||||
        addListener(event: "online", listener: () => void): this;
 | 
					 | 
				
			||||||
        addListener(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        emit(event: "error", err: Error): boolean;
 | 
					 | 
				
			||||||
        emit(event: "exit", exitCode: number): boolean;
 | 
					 | 
				
			||||||
        emit(event: "message", value: any): boolean;
 | 
					 | 
				
			||||||
        emit(event: "online"): boolean;
 | 
					 | 
				
			||||||
        emit(event: string | symbol, ...args: any[]): boolean;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        on(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        on(event: "exit", listener: (exitCode: number) => void): this;
 | 
					 | 
				
			||||||
        on(event: "message", listener: (value: any) => void): this;
 | 
					 | 
				
			||||||
        on(event: "online", listener: () => void): this;
 | 
					 | 
				
			||||||
        on(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        once(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        once(event: "exit", listener: (exitCode: number) => void): this;
 | 
					 | 
				
			||||||
        once(event: "message", listener: (value: any) => void): this;
 | 
					 | 
				
			||||||
        once(event: "online", listener: () => void): this;
 | 
					 | 
				
			||||||
        once(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        prependListener(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "exit", listener: (exitCode: number) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "message", listener: (value: any) => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: "online", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependListener(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        prependOnceListener(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "exit", listener: (exitCode: number) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "message", listener: (value: any) => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: "online", listener: () => void): this;
 | 
					 | 
				
			||||||
        prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        removeListener(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        removeListener(event: "exit", listener: (exitCode: number) => void): this;
 | 
					 | 
				
			||||||
        removeListener(event: "message", listener: (value: any) => void): this;
 | 
					 | 
				
			||||||
        removeListener(event: "online", listener: () => void): this;
 | 
					 | 
				
			||||||
        removeListener(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        off(event: "error", listener: (err: Error) => void): this;
 | 
					 | 
				
			||||||
        off(event: "exit", listener: (exitCode: number) => void): this;
 | 
					 | 
				
			||||||
        off(event: "message", listener: (value: any) => void): this;
 | 
					 | 
				
			||||||
        off(event: "online", listener: () => void): this;
 | 
					 | 
				
			||||||
        off(event: string | symbol, listener: (...args: any[]) => void): this;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										352
									
								
								node_modules/@types/node/zlib.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										352
									
								
								node_modules/@types/node/zlib.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,352 +0,0 @@
 | 
				
			|||||||
declare module "zlib" {
 | 
					 | 
				
			||||||
    import * as stream from "stream";
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface ZlibOptions {
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * @default constants.Z_NO_FLUSH
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        flush?: number;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * @default constants.Z_FINISH
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        finishFlush?: number;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * @default 16*1024
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        chunkSize?: number;
 | 
					 | 
				
			||||||
        windowBits?: number;
 | 
					 | 
				
			||||||
        level?: number; // compression only
 | 
					 | 
				
			||||||
        memLevel?: number; // compression only
 | 
					 | 
				
			||||||
        strategy?: number; // compression only
 | 
					 | 
				
			||||||
        dictionary?: Buffer | NodeJS.TypedArray | DataView | ArrayBuffer; // deflate/inflate only, empty dictionary by default
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface BrotliOptions {
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * @default constants.BROTLI_OPERATION_PROCESS
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        flush?: number;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * @default constants.BROTLI_OPERATION_FINISH
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        finishFlush?: number;
 | 
					 | 
				
			||||||
        /**
 | 
					 | 
				
			||||||
         * @default 16*1024
 | 
					 | 
				
			||||||
         */
 | 
					 | 
				
			||||||
        chunkSize?: number;
 | 
					 | 
				
			||||||
        params?: {
 | 
					 | 
				
			||||||
            /**
 | 
					 | 
				
			||||||
             * Each key is a `constants.BROTLI_*` constant.
 | 
					 | 
				
			||||||
             */
 | 
					 | 
				
			||||||
            [key: number]: boolean | number;
 | 
					 | 
				
			||||||
        };
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface Zlib {
 | 
					 | 
				
			||||||
        /** @deprecated Use bytesWritten instead. */
 | 
					 | 
				
			||||||
        readonly bytesRead: number;
 | 
					 | 
				
			||||||
        readonly bytesWritten: number;
 | 
					 | 
				
			||||||
        shell?: boolean | string;
 | 
					 | 
				
			||||||
        close(callback?: () => void): void;
 | 
					 | 
				
			||||||
        flush(kind?: number | (() => void), callback?: () => void): void;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface ZlibParams {
 | 
					 | 
				
			||||||
        params(level: number, strategy: number, callback: () => void): void;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface ZlibReset {
 | 
					 | 
				
			||||||
        reset(): void;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    interface BrotliCompress extends stream.Transform, Zlib { }
 | 
					 | 
				
			||||||
    interface BrotliDecompress extends stream.Transform, Zlib { }
 | 
					 | 
				
			||||||
    interface Gzip extends stream.Transform, Zlib { }
 | 
					 | 
				
			||||||
    interface Gunzip extends stream.Transform, Zlib { }
 | 
					 | 
				
			||||||
    interface Deflate extends stream.Transform, Zlib, ZlibReset, ZlibParams { }
 | 
					 | 
				
			||||||
    interface Inflate extends stream.Transform, Zlib, ZlibReset { }
 | 
					 | 
				
			||||||
    interface DeflateRaw extends stream.Transform, Zlib, ZlibReset, ZlibParams { }
 | 
					 | 
				
			||||||
    interface InflateRaw extends stream.Transform, Zlib, ZlibReset { }
 | 
					 | 
				
			||||||
    interface Unzip extends stream.Transform, Zlib { }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function createBrotliCompress(options?: BrotliOptions): BrotliCompress;
 | 
					 | 
				
			||||||
    function createBrotliDecompress(options?: BrotliOptions): BrotliDecompress;
 | 
					 | 
				
			||||||
    function createGzip(options?: ZlibOptions): Gzip;
 | 
					 | 
				
			||||||
    function createGunzip(options?: ZlibOptions): Gunzip;
 | 
					 | 
				
			||||||
    function createDeflate(options?: ZlibOptions): Deflate;
 | 
					 | 
				
			||||||
    function createInflate(options?: ZlibOptions): Inflate;
 | 
					 | 
				
			||||||
    function createDeflateRaw(options?: ZlibOptions): DeflateRaw;
 | 
					 | 
				
			||||||
    function createInflateRaw(options?: ZlibOptions): InflateRaw;
 | 
					 | 
				
			||||||
    function createUnzip(options?: ZlibOptions): Unzip;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    type InputType = string | Buffer | DataView | ArrayBuffer | NodeJS.TypedArray;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    type CompressCallback = (error: Error | null, result: Buffer) => void;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function brotliCompress(buf: InputType, options: BrotliOptions, callback: CompressCallback): void;
 | 
					 | 
				
			||||||
    function brotliCompress(buf: InputType, callback: CompressCallback): void;
 | 
					 | 
				
			||||||
    function brotliCompressSync(buf: InputType, options?: BrotliOptions): Buffer;
 | 
					 | 
				
			||||||
    function brotliDecompress(buf: InputType, options: BrotliOptions, callback: CompressCallback): void;
 | 
					 | 
				
			||||||
    function brotliDecompress(buf: InputType, callback: CompressCallback): void;
 | 
					 | 
				
			||||||
    function brotliDecompressSync(buf: InputType, options?: BrotliOptions): Buffer;
 | 
					 | 
				
			||||||
    function deflate(buf: InputType, callback: CompressCallback): void;
 | 
					 | 
				
			||||||
    function deflate(buf: InputType, options: ZlibOptions, callback: CompressCallback): void;
 | 
					 | 
				
			||||||
    function deflateSync(buf: InputType, options?: ZlibOptions): Buffer;
 | 
					 | 
				
			||||||
    function deflateRaw(buf: InputType, callback: CompressCallback): void;
 | 
					 | 
				
			||||||
    function deflateRaw(buf: InputType, options: ZlibOptions, callback: CompressCallback): void;
 | 
					 | 
				
			||||||
    function deflateRawSync(buf: InputType, options?: ZlibOptions): Buffer;
 | 
					 | 
				
			||||||
    function gzip(buf: InputType, callback: CompressCallback): void;
 | 
					 | 
				
			||||||
    function gzip(buf: InputType, options: ZlibOptions, callback: CompressCallback): void;
 | 
					 | 
				
			||||||
    function gzipSync(buf: InputType, options?: ZlibOptions): Buffer;
 | 
					 | 
				
			||||||
    function gunzip(buf: InputType, callback: CompressCallback): void;
 | 
					 | 
				
			||||||
    function gunzip(buf: InputType, options: ZlibOptions, callback: CompressCallback): void;
 | 
					 | 
				
			||||||
    function gunzipSync(buf: InputType, options?: ZlibOptions): Buffer;
 | 
					 | 
				
			||||||
    function inflate(buf: InputType, callback: CompressCallback): void;
 | 
					 | 
				
			||||||
    function inflate(buf: InputType, options: ZlibOptions, callback: CompressCallback): void;
 | 
					 | 
				
			||||||
    function inflateSync(buf: InputType, options?: ZlibOptions): Buffer;
 | 
					 | 
				
			||||||
    function inflateRaw(buf: InputType, callback: CompressCallback): void;
 | 
					 | 
				
			||||||
    function inflateRaw(buf: InputType, options: ZlibOptions, callback: CompressCallback): void;
 | 
					 | 
				
			||||||
    function inflateRawSync(buf: InputType, options?: ZlibOptions): Buffer;
 | 
					 | 
				
			||||||
    function unzip(buf: InputType, callback: CompressCallback): void;
 | 
					 | 
				
			||||||
    function unzip(buf: InputType, options: ZlibOptions, callback: CompressCallback): void;
 | 
					 | 
				
			||||||
    function unzipSync(buf: InputType, options?: ZlibOptions): Buffer;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    namespace constants {
 | 
					 | 
				
			||||||
        const BROTLI_DECODE: number;
 | 
					 | 
				
			||||||
        const BROTLI_DECODER_ERROR_ALLOC_BLOCK_TYPE_TREES: number;
 | 
					 | 
				
			||||||
        const BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MAP: number;
 | 
					 | 
				
			||||||
        const BROTLI_DECODER_ERROR_ALLOC_CONTEXT_MODES: number;
 | 
					 | 
				
			||||||
        const BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_1: number;
 | 
					 | 
				
			||||||
        const BROTLI_DECODER_ERROR_ALLOC_RING_BUFFER_2: number;
 | 
					 | 
				
			||||||
        const BROTLI_DECODER_ERROR_ALLOC_TREE_GROUPS: number;
 | 
					 | 
				
			||||||
        const BROTLI_DECODER_ERROR_DICTIONARY_NOT_SET: number;
 | 
					 | 
				
			||||||
        const BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_1: number;
 | 
					 | 
				
			||||||
        const BROTLI_DECODER_ERROR_FORMAT_BLOCK_LENGTH_2: number;
 | 
					 | 
				
			||||||
        const BROTLI_DECODER_ERROR_FORMAT_CL_SPACE: number;
 | 
					 | 
				
			||||||
        const BROTLI_DECODER_ERROR_FORMAT_CONTEXT_MAP_REPEAT: number;
 | 
					 | 
				
			||||||
        const BROTLI_DECODER_ERROR_FORMAT_DICTIONARY: number;
 | 
					 | 
				
			||||||
        const BROTLI_DECODER_ERROR_FORMAT_DISTANCE: number;
 | 
					 | 
				
			||||||
        const BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_META_NIBBLE: number;
 | 
					 | 
				
			||||||
        const BROTLI_DECODER_ERROR_FORMAT_EXUBERANT_NIBBLE: number;
 | 
					 | 
				
			||||||
        const BROTLI_DECODER_ERROR_FORMAT_HUFFMAN_SPACE: number;
 | 
					 | 
				
			||||||
        const BROTLI_DECODER_ERROR_FORMAT_PADDING_1: number;
 | 
					 | 
				
			||||||
        const BROTLI_DECODER_ERROR_FORMAT_PADDING_2: number;
 | 
					 | 
				
			||||||
        const BROTLI_DECODER_ERROR_FORMAT_RESERVED: number;
 | 
					 | 
				
			||||||
        const BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_ALPHABET: number;
 | 
					 | 
				
			||||||
        const BROTLI_DECODER_ERROR_FORMAT_SIMPLE_HUFFMAN_SAME: number;
 | 
					 | 
				
			||||||
        const BROTLI_DECODER_ERROR_FORMAT_TRANSFORM: number;
 | 
					 | 
				
			||||||
        const BROTLI_DECODER_ERROR_FORMAT_WINDOW_BITS: number;
 | 
					 | 
				
			||||||
        const BROTLI_DECODER_ERROR_INVALID_ARGUMENTS: number;
 | 
					 | 
				
			||||||
        const BROTLI_DECODER_ERROR_UNREACHABLE: number;
 | 
					 | 
				
			||||||
        const BROTLI_DECODER_NEEDS_MORE_INPUT: number;
 | 
					 | 
				
			||||||
        const BROTLI_DECODER_NEEDS_MORE_OUTPUT: number;
 | 
					 | 
				
			||||||
        const BROTLI_DECODER_NO_ERROR: number;
 | 
					 | 
				
			||||||
        const BROTLI_DECODER_PARAM_DISABLE_RING_BUFFER_REALLOCATION: number;
 | 
					 | 
				
			||||||
        const BROTLI_DECODER_PARAM_LARGE_WINDOW: number;
 | 
					 | 
				
			||||||
        const BROTLI_DECODER_RESULT_ERROR: number;
 | 
					 | 
				
			||||||
        const BROTLI_DECODER_RESULT_NEEDS_MORE_INPUT: number;
 | 
					 | 
				
			||||||
        const BROTLI_DECODER_RESULT_NEEDS_MORE_OUTPUT: number;
 | 
					 | 
				
			||||||
        const BROTLI_DECODER_RESULT_SUCCESS: number;
 | 
					 | 
				
			||||||
        const BROTLI_DECODER_SUCCESS: number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        const BROTLI_DEFAULT_MODE: number;
 | 
					 | 
				
			||||||
        const BROTLI_DEFAULT_QUALITY: number;
 | 
					 | 
				
			||||||
        const BROTLI_DEFAULT_WINDOW: number;
 | 
					 | 
				
			||||||
        const BROTLI_ENCODE: number;
 | 
					 | 
				
			||||||
        const BROTLI_LARGE_MAX_WINDOW_BITS: number;
 | 
					 | 
				
			||||||
        const BROTLI_MAX_INPUT_BLOCK_BITS: number;
 | 
					 | 
				
			||||||
        const BROTLI_MAX_QUALITY: number;
 | 
					 | 
				
			||||||
        const BROTLI_MAX_WINDOW_BITS: number;
 | 
					 | 
				
			||||||
        const BROTLI_MIN_INPUT_BLOCK_BITS: number;
 | 
					 | 
				
			||||||
        const BROTLI_MIN_QUALITY: number;
 | 
					 | 
				
			||||||
        const BROTLI_MIN_WINDOW_BITS: number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        const BROTLI_MODE_FONT: number;
 | 
					 | 
				
			||||||
        const BROTLI_MODE_GENERIC: number;
 | 
					 | 
				
			||||||
        const BROTLI_MODE_TEXT: number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        const BROTLI_OPERATION_EMIT_METADATA: number;
 | 
					 | 
				
			||||||
        const BROTLI_OPERATION_FINISH: number;
 | 
					 | 
				
			||||||
        const BROTLI_OPERATION_FLUSH: number;
 | 
					 | 
				
			||||||
        const BROTLI_OPERATION_PROCESS: number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        const BROTLI_PARAM_DISABLE_LITERAL_CONTEXT_MODELING: number;
 | 
					 | 
				
			||||||
        const BROTLI_PARAM_LARGE_WINDOW: number;
 | 
					 | 
				
			||||||
        const BROTLI_PARAM_LGBLOCK: number;
 | 
					 | 
				
			||||||
        const BROTLI_PARAM_LGWIN: number;
 | 
					 | 
				
			||||||
        const BROTLI_PARAM_MODE: number;
 | 
					 | 
				
			||||||
        const BROTLI_PARAM_NDIRECT: number;
 | 
					 | 
				
			||||||
        const BROTLI_PARAM_NPOSTFIX: number;
 | 
					 | 
				
			||||||
        const BROTLI_PARAM_QUALITY: number;
 | 
					 | 
				
			||||||
        const BROTLI_PARAM_SIZE_HINT: number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        const DEFLATE: number;
 | 
					 | 
				
			||||||
        const DEFLATERAW: number;
 | 
					 | 
				
			||||||
        const GUNZIP: number;
 | 
					 | 
				
			||||||
        const GZIP: number;
 | 
					 | 
				
			||||||
        const INFLATE: number;
 | 
					 | 
				
			||||||
        const INFLATERAW: number;
 | 
					 | 
				
			||||||
        const UNZIP: number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        const Z_BEST_COMPRESSION: number;
 | 
					 | 
				
			||||||
        const Z_BEST_SPEED: number;
 | 
					 | 
				
			||||||
        const Z_BLOCK: number;
 | 
					 | 
				
			||||||
        const Z_BUF_ERROR: number;
 | 
					 | 
				
			||||||
        const Z_DATA_ERROR: number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        const Z_DEFAULT_CHUNK: number;
 | 
					 | 
				
			||||||
        const Z_DEFAULT_COMPRESSION: number;
 | 
					 | 
				
			||||||
        const Z_DEFAULT_LEVEL: number;
 | 
					 | 
				
			||||||
        const Z_DEFAULT_MEMLEVEL: number;
 | 
					 | 
				
			||||||
        const Z_DEFAULT_STRATEGY: number;
 | 
					 | 
				
			||||||
        const Z_DEFAULT_WINDOWBITS: number;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        const Z_ERRNO: number;
 | 
					 | 
				
			||||||
        const Z_FILTERED: number;
 | 
					 | 
				
			||||||
        const Z_FINISH: number;
 | 
					 | 
				
			||||||
        const Z_FIXED: number;
 | 
					 | 
				
			||||||
        const Z_FULL_FLUSH: number;
 | 
					 | 
				
			||||||
        const Z_HUFFMAN_ONLY: number;
 | 
					 | 
				
			||||||
        const Z_MAX_CHUNK: number;
 | 
					 | 
				
			||||||
        const Z_MAX_LEVEL: number;
 | 
					 | 
				
			||||||
        const Z_MAX_MEMLEVEL: number;
 | 
					 | 
				
			||||||
        const Z_MAX_WINDOWBITS: number;
 | 
					 | 
				
			||||||
        const Z_MEM_ERROR: number;
 | 
					 | 
				
			||||||
        const Z_MIN_CHUNK: number;
 | 
					 | 
				
			||||||
        const Z_MIN_LEVEL: number;
 | 
					 | 
				
			||||||
        const Z_MIN_MEMLEVEL: number;
 | 
					 | 
				
			||||||
        const Z_MIN_WINDOWBITS: number;
 | 
					 | 
				
			||||||
        const Z_NEED_DICT: number;
 | 
					 | 
				
			||||||
        const Z_NO_COMPRESSION: number;
 | 
					 | 
				
			||||||
        const Z_NO_FLUSH: number;
 | 
					 | 
				
			||||||
        const Z_OK: number;
 | 
					 | 
				
			||||||
        const Z_PARTIAL_FLUSH: number;
 | 
					 | 
				
			||||||
        const Z_RLE: number;
 | 
					 | 
				
			||||||
        const Z_STREAM_END: number;
 | 
					 | 
				
			||||||
        const Z_STREAM_ERROR: number;
 | 
					 | 
				
			||||||
        const Z_SYNC_FLUSH: number;
 | 
					 | 
				
			||||||
        const Z_VERSION_ERROR: number;
 | 
					 | 
				
			||||||
        const ZLIB_VERNUM: number;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * @deprecated
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    const Z_NO_FLUSH: number;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * @deprecated
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    const Z_PARTIAL_FLUSH: number;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * @deprecated
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    const Z_SYNC_FLUSH: number;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * @deprecated
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    const Z_FULL_FLUSH: number;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * @deprecated
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    const Z_FINISH: number;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * @deprecated
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    const Z_BLOCK: number;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * @deprecated
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    const Z_TREES: number;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * @deprecated
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    const Z_OK: number;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * @deprecated
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    const Z_STREAM_END: number;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * @deprecated
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    const Z_NEED_DICT: number;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * @deprecated
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    const Z_ERRNO: number;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * @deprecated
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    const Z_STREAM_ERROR: number;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * @deprecated
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    const Z_DATA_ERROR: number;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * @deprecated
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    const Z_MEM_ERROR: number;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * @deprecated
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    const Z_BUF_ERROR: number;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * @deprecated
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    const Z_VERSION_ERROR: number;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * @deprecated
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    const Z_NO_COMPRESSION: number;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * @deprecated
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    const Z_BEST_SPEED: number;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * @deprecated
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    const Z_BEST_COMPRESSION: number;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * @deprecated
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    const Z_DEFAULT_COMPRESSION: number;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * @deprecated
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    const Z_FILTERED: number;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * @deprecated
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    const Z_HUFFMAN_ONLY: number;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * @deprecated
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    const Z_RLE: number;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * @deprecated
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    const Z_FIXED: number;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * @deprecated
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    const Z_DEFAULT_STRATEGY: number;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * @deprecated
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    const Z_BINARY: number;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * @deprecated
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    const Z_TEXT: number;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * @deprecated
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    const Z_ASCII: number;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * @deprecated
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    const Z_UNKNOWN: number;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
     * @deprecated
 | 
					 | 
				
			||||||
     */
 | 
					 | 
				
			||||||
    const Z_DEFLATED: number;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										20
									
								
								node_modules/ajv/.tonic_example.js
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										20
									
								
								node_modules/ajv/.tonic_example.js
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,20 +0,0 @@
 | 
				
			|||||||
var Ajv = require('ajv');
 | 
					 | 
				
			||||||
var ajv = new Ajv({allErrors: true});
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
var schema = {
 | 
					 | 
				
			||||||
  "properties": {
 | 
					 | 
				
			||||||
    "foo": { "type": "string" },
 | 
					 | 
				
			||||||
    "bar": { "type": "number", "maximum": 3 }
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
};
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
var validate = ajv.compile(schema);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
test({"foo": "abc", "bar": 2});
 | 
					 | 
				
			||||||
test({"foo": 2, "bar": 4});
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function test(data) {
 | 
					 | 
				
			||||||
  var valid = validate(data);
 | 
					 | 
				
			||||||
  if (valid) console.log('Valid!');
 | 
					 | 
				
			||||||
  else console.log('Invalid: ' + ajv.errorsText(validate.errors));
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										22
									
								
								node_modules/ajv/LICENSE
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										22
									
								
								node_modules/ajv/LICENSE
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,22 +0,0 @@
 | 
				
			|||||||
The MIT License (MIT)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Copyright (c) 2015-2017 Evgeny Poberezkin
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Permission is hereby granted, free of charge, to any person obtaining a copy
 | 
					 | 
				
			||||||
of this software and associated documentation files (the "Software"), to deal
 | 
					 | 
				
			||||||
in the Software without restriction, including without limitation the rights
 | 
					 | 
				
			||||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 | 
					 | 
				
			||||||
copies of the Software, and to permit persons to whom the Software is
 | 
					 | 
				
			||||||
furnished to do so, subject to the following conditions:
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
The above copyright notice and this permission notice shall be included in all
 | 
					 | 
				
			||||||
copies or substantial portions of the Software.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 | 
					 | 
				
			||||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 | 
					 | 
				
			||||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 | 
					 | 
				
			||||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 | 
					 | 
				
			||||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 | 
					 | 
				
			||||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 | 
					 | 
				
			||||||
SOFTWARE.
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
							
								
								
									
										1344
									
								
								node_modules/ajv/README.md
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										1344
									
								
								node_modules/ajv/README.md
									
									
									
										generated
									
									
										vendored
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										7165
									
								
								node_modules/ajv/dist/ajv.bundle.js
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										7165
									
								
								node_modules/ajv/dist/ajv.bundle.js
									
									
									
										generated
									
									
										vendored
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										3
									
								
								node_modules/ajv/dist/ajv.min.js
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										3
									
								
								node_modules/ajv/dist/ajv.min.js
									
									
									
										generated
									
									
										vendored
									
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
							
								
								
									
										1
									
								
								node_modules/ajv/dist/ajv.min.js.map
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										1
									
								
								node_modules/ajv/dist/ajv.min.js.map
									
									
									
										generated
									
									
										vendored
									
									
								
							
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								node_modules/ajv/lib/.DS_Store
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										
											BIN
										
									
								
								node_modules/ajv/lib/.DS_Store
									
									
									
										generated
									
									
										vendored
									
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										389
									
								
								node_modules/ajv/lib/ajv.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										389
									
								
								node_modules/ajv/lib/ajv.d.ts
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,389 +0,0 @@
 | 
				
			|||||||
declare var ajv: {
 | 
					 | 
				
			||||||
  (options?: ajv.Options): ajv.Ajv;
 | 
					 | 
				
			||||||
  new(options?: ajv.Options): ajv.Ajv;
 | 
					 | 
				
			||||||
  ValidationError: typeof AjvErrors.ValidationError;
 | 
					 | 
				
			||||||
  MissingRefError: typeof AjvErrors.MissingRefError;
 | 
					 | 
				
			||||||
  $dataMetaSchema: object;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
declare namespace AjvErrors {
 | 
					 | 
				
			||||||
  class ValidationError extends Error {
 | 
					 | 
				
			||||||
    constructor(errors: Array<ajv.ErrorObject>);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    message: string;
 | 
					 | 
				
			||||||
    errors: Array<ajv.ErrorObject>;
 | 
					 | 
				
			||||||
    ajv: true;
 | 
					 | 
				
			||||||
    validation: true;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  class MissingRefError extends Error {
 | 
					 | 
				
			||||||
    constructor(baseId: string, ref: string, message?: string);
 | 
					 | 
				
			||||||
    static message: (baseId: string, ref: string) => string;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    message: string;
 | 
					 | 
				
			||||||
    missingRef: string;
 | 
					 | 
				
			||||||
    missingSchema: string;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
declare namespace ajv {
 | 
					 | 
				
			||||||
  type ValidationError = AjvErrors.ValidationError;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  type MissingRefError = AjvErrors.MissingRefError;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  interface Ajv {
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
    * Validate data using schema
 | 
					 | 
				
			||||||
    * Schema will be compiled and cached (using serialized JSON as key, [fast-json-stable-stringify](https://github.com/epoberezkin/fast-json-stable-stringify) is used to serialize by default).
 | 
					 | 
				
			||||||
    * @param  {string|object|Boolean} schemaKeyRef key, ref or schema object
 | 
					 | 
				
			||||||
    * @param  {Any} data to be validated
 | 
					 | 
				
			||||||
    * @return {Boolean} validation result. Errors from the last validation will be available in `ajv.errors` (and also in compiled schema: `schema.errors`).
 | 
					 | 
				
			||||||
    */
 | 
					 | 
				
			||||||
    validate(schemaKeyRef: object | string | boolean, data: any): boolean | PromiseLike<any>;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
    * Create validating function for passed schema.
 | 
					 | 
				
			||||||
    * @param  {object|Boolean} schema schema object
 | 
					 | 
				
			||||||
    * @return {Function} validating function
 | 
					 | 
				
			||||||
    */
 | 
					 | 
				
			||||||
    compile(schema: object | boolean): ValidateFunction;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
    * Creates validating function for passed schema with asynchronous loading of missing schemas.
 | 
					 | 
				
			||||||
    * `loadSchema` option should be a function that accepts schema uri and node-style callback.
 | 
					 | 
				
			||||||
    * @this  Ajv
 | 
					 | 
				
			||||||
    * @param {object|Boolean} schema schema object
 | 
					 | 
				
			||||||
    * @param {Boolean} meta optional true to compile meta-schema; this parameter can be skipped
 | 
					 | 
				
			||||||
    * @param {Function} callback optional node-style callback, it is always called with 2 parameters: error (or null) and validating function.
 | 
					 | 
				
			||||||
    * @return {PromiseLike<ValidateFunction>} validating function
 | 
					 | 
				
			||||||
    */
 | 
					 | 
				
			||||||
    compileAsync(schema: object | boolean, meta?: Boolean, callback?: (err: Error, validate: ValidateFunction) => any): PromiseLike<ValidateFunction>;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
    * Adds schema to the instance.
 | 
					 | 
				
			||||||
    * @param {object|Array} schema schema or array of schemas. If array is passed, `key` and other parameters will be ignored.
 | 
					 | 
				
			||||||
    * @param {string} key Optional schema key. Can be passed to `validate` method instead of schema object or id/ref. One schema per instance can have empty `id` and `key`.
 | 
					 | 
				
			||||||
    * @return {Ajv} this for method chaining
 | 
					 | 
				
			||||||
    */
 | 
					 | 
				
			||||||
    addSchema(schema: Array<object> | object, key?: string): Ajv;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
    * Add schema that will be used to validate other schemas
 | 
					 | 
				
			||||||
    * options in META_IGNORE_OPTIONS are alway set to false
 | 
					 | 
				
			||||||
    * @param {object} schema schema object
 | 
					 | 
				
			||||||
    * @param {string} key optional schema key
 | 
					 | 
				
			||||||
    * @return {Ajv} this for method chaining
 | 
					 | 
				
			||||||
    */
 | 
					 | 
				
			||||||
    addMetaSchema(schema: object, key?: string): Ajv;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
    * Validate schema
 | 
					 | 
				
			||||||
    * @param {object|Boolean} schema schema to validate
 | 
					 | 
				
			||||||
    * @return {Boolean} true if schema is valid
 | 
					 | 
				
			||||||
    */
 | 
					 | 
				
			||||||
    validateSchema(schema: object | boolean): boolean;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
    * Get compiled schema from the instance by `key` or `ref`.
 | 
					 | 
				
			||||||
    * @param  {string} keyRef `key` that was passed to `addSchema` or full schema reference (`schema.id` or resolved id).
 | 
					 | 
				
			||||||
    * @return {Function} schema validating function (with property `schema`).
 | 
					 | 
				
			||||||
    */
 | 
					 | 
				
			||||||
    getSchema(keyRef: string): ValidateFunction;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
    * Remove cached schema(s).
 | 
					 | 
				
			||||||
    * If no parameter is passed all schemas but meta-schemas are removed.
 | 
					 | 
				
			||||||
    * If RegExp is passed all schemas with key/id matching pattern but meta-schemas are removed.
 | 
					 | 
				
			||||||
    * Even if schema is referenced by other schemas it still can be removed as other schemas have local references.
 | 
					 | 
				
			||||||
    * @param  {string|object|RegExp|Boolean} schemaKeyRef key, ref, pattern to match key/ref or schema object
 | 
					 | 
				
			||||||
    * @return {Ajv} this for method chaining
 | 
					 | 
				
			||||||
    */
 | 
					 | 
				
			||||||
    removeSchema(schemaKeyRef?: object | string | RegExp | boolean): Ajv;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
    * Add custom format
 | 
					 | 
				
			||||||
    * @param {string} name format name
 | 
					 | 
				
			||||||
    * @param {string|RegExp|Function} format string is converted to RegExp; function should return boolean (true when valid)
 | 
					 | 
				
			||||||
    * @return {Ajv} this for method chaining
 | 
					 | 
				
			||||||
    */
 | 
					 | 
				
			||||||
    addFormat(name: string, format: FormatValidator | FormatDefinition): Ajv;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
    * Define custom keyword
 | 
					 | 
				
			||||||
    * @this  Ajv
 | 
					 | 
				
			||||||
    * @param {string} keyword custom keyword, should be a valid identifier, should be different from all standard, custom and macro keywords.
 | 
					 | 
				
			||||||
    * @param {object} definition keyword definition object with properties `type` (type(s) which the keyword applies to), `validate` or `compile`.
 | 
					 | 
				
			||||||
    * @return {Ajv} this for method chaining
 | 
					 | 
				
			||||||
    */
 | 
					 | 
				
			||||||
    addKeyword(keyword: string, definition: KeywordDefinition): Ajv;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
    * Get keyword definition
 | 
					 | 
				
			||||||
    * @this  Ajv
 | 
					 | 
				
			||||||
    * @param {string} keyword pre-defined or custom keyword.
 | 
					 | 
				
			||||||
    * @return {object|Boolean} custom keyword definition, `true` if it is a predefined keyword, `false` otherwise.
 | 
					 | 
				
			||||||
    */
 | 
					 | 
				
			||||||
    getKeyword(keyword: string): object | boolean;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
    * Remove keyword
 | 
					 | 
				
			||||||
    * @this  Ajv
 | 
					 | 
				
			||||||
    * @param {string} keyword pre-defined or custom keyword.
 | 
					 | 
				
			||||||
    * @return {Ajv} this for method chaining
 | 
					 | 
				
			||||||
    */
 | 
					 | 
				
			||||||
    removeKeyword(keyword: string): Ajv;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
    * Validate keyword
 | 
					 | 
				
			||||||
    * @this  Ajv
 | 
					 | 
				
			||||||
    * @param {object} definition keyword definition object
 | 
					 | 
				
			||||||
    * @param {boolean} throwError true to throw exception if definition is invalid
 | 
					 | 
				
			||||||
    * @return {boolean} validation result
 | 
					 | 
				
			||||||
    */
 | 
					 | 
				
			||||||
    validateKeyword(definition: KeywordDefinition, throwError: boolean): boolean;
 | 
					 | 
				
			||||||
    /**
 | 
					 | 
				
			||||||
    * Convert array of error message objects to string
 | 
					 | 
				
			||||||
    * @param  {Array<object>} errors optional array of validation errors, if not passed errors from the instance are used.
 | 
					 | 
				
			||||||
    * @param  {object} options optional options with properties `separator` and `dataVar`.
 | 
					 | 
				
			||||||
    * @return {string} human readable string with all errors descriptions
 | 
					 | 
				
			||||||
    */
 | 
					 | 
				
			||||||
    errorsText(errors?: Array<ErrorObject> | null, options?: ErrorsTextOptions): string;
 | 
					 | 
				
			||||||
    errors?: Array<ErrorObject> | null;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  interface CustomLogger {
 | 
					 | 
				
			||||||
    log(...args: any[]): any;
 | 
					 | 
				
			||||||
    warn(...args: any[]): any;
 | 
					 | 
				
			||||||
    error(...args: any[]): any;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  interface ValidateFunction {
 | 
					 | 
				
			||||||
    (
 | 
					 | 
				
			||||||
      data: any,
 | 
					 | 
				
			||||||
      dataPath?: string,
 | 
					 | 
				
			||||||
      parentData?: object | Array<any>,
 | 
					 | 
				
			||||||
      parentDataProperty?: string | number,
 | 
					 | 
				
			||||||
      rootData?: object | Array<any>
 | 
					 | 
				
			||||||
    ): boolean | PromiseLike<any>;
 | 
					 | 
				
			||||||
    schema?: object | boolean;
 | 
					 | 
				
			||||||
    errors?: null | Array<ErrorObject>;
 | 
					 | 
				
			||||||
    refs?: object;
 | 
					 | 
				
			||||||
    refVal?: Array<any>;
 | 
					 | 
				
			||||||
    root?: ValidateFunction | object;
 | 
					 | 
				
			||||||
    $async?: true;
 | 
					 | 
				
			||||||
    source?: object;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  interface Options {
 | 
					 | 
				
			||||||
    $data?: boolean;
 | 
					 | 
				
			||||||
    allErrors?: boolean;
 | 
					 | 
				
			||||||
    verbose?: boolean;
 | 
					 | 
				
			||||||
    jsonPointers?: boolean;
 | 
					 | 
				
			||||||
    uniqueItems?: boolean;
 | 
					 | 
				
			||||||
    unicode?: boolean;
 | 
					 | 
				
			||||||
    format?: string;
 | 
					 | 
				
			||||||
    formats?: object;
 | 
					 | 
				
			||||||
    unknownFormats?: true | string[] | 'ignore';
 | 
					 | 
				
			||||||
    schemas?: Array<object> | object;
 | 
					 | 
				
			||||||
    schemaId?: '$id' | 'id' | 'auto';
 | 
					 | 
				
			||||||
    missingRefs?: true | 'ignore' | 'fail';
 | 
					 | 
				
			||||||
    extendRefs?: true | 'ignore' | 'fail';
 | 
					 | 
				
			||||||
    loadSchema?: (uri: string, cb?: (err: Error, schema: object) => void) => PromiseLike<object | boolean>;
 | 
					 | 
				
			||||||
    removeAdditional?: boolean | 'all' | 'failing';
 | 
					 | 
				
			||||||
    useDefaults?: boolean | 'shared';
 | 
					 | 
				
			||||||
    coerceTypes?: boolean | 'array';
 | 
					 | 
				
			||||||
    strictDefaults?: boolean | 'log';
 | 
					 | 
				
			||||||
    async?: boolean | string;
 | 
					 | 
				
			||||||
    transpile?: string | ((code: string) => string);
 | 
					 | 
				
			||||||
    meta?: boolean | object;
 | 
					 | 
				
			||||||
    validateSchema?: boolean | 'log';
 | 
					 | 
				
			||||||
    addUsedSchema?: boolean;
 | 
					 | 
				
			||||||
    inlineRefs?: boolean | number;
 | 
					 | 
				
			||||||
    passContext?: boolean;
 | 
					 | 
				
			||||||
    loopRequired?: number;
 | 
					 | 
				
			||||||
    ownProperties?: boolean;
 | 
					 | 
				
			||||||
    multipleOfPrecision?: boolean | number;
 | 
					 | 
				
			||||||
    errorDataPath?: string,
 | 
					 | 
				
			||||||
    messages?: boolean;
 | 
					 | 
				
			||||||
    sourceCode?: boolean;
 | 
					 | 
				
			||||||
    processCode?: (code: string) => string;
 | 
					 | 
				
			||||||
    cache?: object;
 | 
					 | 
				
			||||||
    logger?: CustomLogger | false;
 | 
					 | 
				
			||||||
    nullable?: boolean;
 | 
					 | 
				
			||||||
    serialize?: ((schema: object | boolean) => any) | false;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  type FormatValidator = string | RegExp | ((data: string) => boolean | PromiseLike<any>);
 | 
					 | 
				
			||||||
  type NumberFormatValidator = ((data: number) => boolean | PromiseLike<any>);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  interface NumberFormatDefinition {
 | 
					 | 
				
			||||||
    type: "number",
 | 
					 | 
				
			||||||
    validate: NumberFormatValidator;
 | 
					 | 
				
			||||||
    compare?: (data1: number, data2: number) => number;
 | 
					 | 
				
			||||||
    async?: boolean;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  interface StringFormatDefinition {
 | 
					 | 
				
			||||||
    type?: "string",
 | 
					 | 
				
			||||||
    validate: FormatValidator;
 | 
					 | 
				
			||||||
    compare?: (data1: string, data2: string) => number;
 | 
					 | 
				
			||||||
    async?: boolean;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  type FormatDefinition = NumberFormatDefinition | StringFormatDefinition;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  interface KeywordDefinition {
 | 
					 | 
				
			||||||
    type?: string | Array<string>;
 | 
					 | 
				
			||||||
    async?: boolean;
 | 
					 | 
				
			||||||
    $data?: boolean;
 | 
					 | 
				
			||||||
    errors?: boolean | string;
 | 
					 | 
				
			||||||
    metaSchema?: object;
 | 
					 | 
				
			||||||
    // schema: false makes validate not to expect schema (ValidateFunction)
 | 
					 | 
				
			||||||
    schema?: boolean;
 | 
					 | 
				
			||||||
    statements?: boolean;
 | 
					 | 
				
			||||||
    dependencies?: Array<string>;
 | 
					 | 
				
			||||||
    modifying?: boolean;
 | 
					 | 
				
			||||||
    valid?: boolean;
 | 
					 | 
				
			||||||
    // one and only one of the following properties should be present
 | 
					 | 
				
			||||||
    validate?: SchemaValidateFunction | ValidateFunction;
 | 
					 | 
				
			||||||
    compile?: (schema: any, parentSchema: object, it: CompilationContext) => ValidateFunction;
 | 
					 | 
				
			||||||
    macro?: (schema: any, parentSchema: object, it: CompilationContext) => object | boolean;
 | 
					 | 
				
			||||||
    inline?: (it: CompilationContext, keyword: string, schema: any, parentSchema: object) => string;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  interface CompilationContext {
 | 
					 | 
				
			||||||
    level: number;
 | 
					 | 
				
			||||||
    dataLevel: number;
 | 
					 | 
				
			||||||
    schema: any;
 | 
					 | 
				
			||||||
    schemaPath: string;
 | 
					 | 
				
			||||||
    baseId: string;
 | 
					 | 
				
			||||||
    async: boolean;
 | 
					 | 
				
			||||||
    opts: Options;
 | 
					 | 
				
			||||||
    formats: {
 | 
					 | 
				
			||||||
      [index: string]: FormatDefinition | undefined;
 | 
					 | 
				
			||||||
    };
 | 
					 | 
				
			||||||
    compositeRule: boolean;
 | 
					 | 
				
			||||||
    validate: (schema: object) => boolean;
 | 
					 | 
				
			||||||
    util: {
 | 
					 | 
				
			||||||
      copy(obj: any, target?: any): any;
 | 
					 | 
				
			||||||
      toHash(source: string[]): { [index: string]: true | undefined };
 | 
					 | 
				
			||||||
      equal(obj: any, target: any): boolean;
 | 
					 | 
				
			||||||
      getProperty(str: string): string;
 | 
					 | 
				
			||||||
      schemaHasRules(schema: object, rules: any): string;
 | 
					 | 
				
			||||||
      escapeQuotes(str: string): string;
 | 
					 | 
				
			||||||
      toQuotedString(str: string): string;
 | 
					 | 
				
			||||||
      getData(jsonPointer: string, dataLevel: number, paths: string[]): string;
 | 
					 | 
				
			||||||
      escapeJsonPointer(str: string): string;
 | 
					 | 
				
			||||||
      unescapeJsonPointer(str: string): string;
 | 
					 | 
				
			||||||
      escapeFragment(str: string): string;
 | 
					 | 
				
			||||||
      unescapeFragment(str: string): string;
 | 
					 | 
				
			||||||
    };
 | 
					 | 
				
			||||||
    self: Ajv;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  interface SchemaValidateFunction {
 | 
					 | 
				
			||||||
    (
 | 
					 | 
				
			||||||
      schema: any,
 | 
					 | 
				
			||||||
      data: any,
 | 
					 | 
				
			||||||
      parentSchema?: object,
 | 
					 | 
				
			||||||
      dataPath?: string,
 | 
					 | 
				
			||||||
      parentData?: object | Array<any>,
 | 
					 | 
				
			||||||
      parentDataProperty?: string | number,
 | 
					 | 
				
			||||||
      rootData?: object | Array<any>
 | 
					 | 
				
			||||||
    ): boolean | PromiseLike<any>;
 | 
					 | 
				
			||||||
    errors?: Array<ErrorObject>;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  interface ErrorsTextOptions {
 | 
					 | 
				
			||||||
    separator?: string;
 | 
					 | 
				
			||||||
    dataVar?: string;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  interface ErrorObject {
 | 
					 | 
				
			||||||
    keyword: string;
 | 
					 | 
				
			||||||
    dataPath: string;
 | 
					 | 
				
			||||||
    schemaPath: string;
 | 
					 | 
				
			||||||
    params: ErrorParameters;
 | 
					 | 
				
			||||||
    // Added to validation errors of propertyNames keyword schema
 | 
					 | 
				
			||||||
    propertyName?: string;
 | 
					 | 
				
			||||||
    // Excluded if messages set to false.
 | 
					 | 
				
			||||||
    message?: string;
 | 
					 | 
				
			||||||
    // These are added with the `verbose` option.
 | 
					 | 
				
			||||||
    schema?: any;
 | 
					 | 
				
			||||||
    parentSchema?: object;
 | 
					 | 
				
			||||||
    data?: any;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  type ErrorParameters = RefParams | LimitParams | AdditionalPropertiesParams |
 | 
					 | 
				
			||||||
    DependenciesParams | FormatParams | ComparisonParams |
 | 
					 | 
				
			||||||
    MultipleOfParams | PatternParams | RequiredParams |
 | 
					 | 
				
			||||||
    TypeParams | UniqueItemsParams | CustomParams |
 | 
					 | 
				
			||||||
    PatternRequiredParams | PropertyNamesParams |
 | 
					 | 
				
			||||||
    IfParams | SwitchParams | NoParams | EnumParams;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  interface RefParams {
 | 
					 | 
				
			||||||
    ref: string;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  interface LimitParams {
 | 
					 | 
				
			||||||
    limit: number;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  interface AdditionalPropertiesParams {
 | 
					 | 
				
			||||||
    additionalProperty: string;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  interface DependenciesParams {
 | 
					 | 
				
			||||||
    property: string;
 | 
					 | 
				
			||||||
    missingProperty: string;
 | 
					 | 
				
			||||||
    depsCount: number;
 | 
					 | 
				
			||||||
    deps: string;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  interface FormatParams {
 | 
					 | 
				
			||||||
    format: string
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  interface ComparisonParams {
 | 
					 | 
				
			||||||
    comparison: string;
 | 
					 | 
				
			||||||
    limit: number | string;
 | 
					 | 
				
			||||||
    exclusive: boolean;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  interface MultipleOfParams {
 | 
					 | 
				
			||||||
    multipleOf: number;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  interface PatternParams {
 | 
					 | 
				
			||||||
    pattern: string;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  interface RequiredParams {
 | 
					 | 
				
			||||||
    missingProperty: string;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  interface TypeParams {
 | 
					 | 
				
			||||||
    type: string;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  interface UniqueItemsParams {
 | 
					 | 
				
			||||||
    i: number;
 | 
					 | 
				
			||||||
    j: number;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  interface CustomParams {
 | 
					 | 
				
			||||||
    keyword: string;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  interface PatternRequiredParams {
 | 
					 | 
				
			||||||
    missingPattern: string;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  interface PropertyNamesParams {
 | 
					 | 
				
			||||||
    propertyName: string;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  interface IfParams {
 | 
					 | 
				
			||||||
    failingKeyword: string;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  interface SwitchParams {
 | 
					 | 
				
			||||||
    caseIndex: number;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  interface NoParams { }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  interface EnumParams {
 | 
					 | 
				
			||||||
    allowedValues: Array<any>;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
export = ajv;
 | 
					 | 
				
			||||||
							
								
								
									
										497
									
								
								node_modules/ajv/lib/ajv.js
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										497
									
								
								node_modules/ajv/lib/ajv.js
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,497 +0,0 @@
 | 
				
			|||||||
'use strict';
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
var compileSchema = require('./compile')
 | 
					 | 
				
			||||||
  , resolve = require('./compile/resolve')
 | 
					 | 
				
			||||||
  , Cache = require('./cache')
 | 
					 | 
				
			||||||
  , SchemaObject = require('./compile/schema_obj')
 | 
					 | 
				
			||||||
  , stableStringify = require('fast-json-stable-stringify')
 | 
					 | 
				
			||||||
  , formats = require('./compile/formats')
 | 
					 | 
				
			||||||
  , rules = require('./compile/rules')
 | 
					 | 
				
			||||||
  , $dataMetaSchema = require('./data')
 | 
					 | 
				
			||||||
  , util = require('./compile/util');
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
module.exports = Ajv;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Ajv.prototype.validate = validate;
 | 
					 | 
				
			||||||
Ajv.prototype.compile = compile;
 | 
					 | 
				
			||||||
Ajv.prototype.addSchema = addSchema;
 | 
					 | 
				
			||||||
Ajv.prototype.addMetaSchema = addMetaSchema;
 | 
					 | 
				
			||||||
Ajv.prototype.validateSchema = validateSchema;
 | 
					 | 
				
			||||||
Ajv.prototype.getSchema = getSchema;
 | 
					 | 
				
			||||||
Ajv.prototype.removeSchema = removeSchema;
 | 
					 | 
				
			||||||
Ajv.prototype.addFormat = addFormat;
 | 
					 | 
				
			||||||
Ajv.prototype.errorsText = errorsText;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Ajv.prototype._addSchema = _addSchema;
 | 
					 | 
				
			||||||
Ajv.prototype._compile = _compile;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Ajv.prototype.compileAsync = require('./compile/async');
 | 
					 | 
				
			||||||
var customKeyword = require('./keyword');
 | 
					 | 
				
			||||||
Ajv.prototype.addKeyword = customKeyword.add;
 | 
					 | 
				
			||||||
Ajv.prototype.getKeyword = customKeyword.get;
 | 
					 | 
				
			||||||
Ajv.prototype.removeKeyword = customKeyword.remove;
 | 
					 | 
				
			||||||
Ajv.prototype.validateKeyword = customKeyword.validate;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
var errorClasses = require('./compile/error_classes');
 | 
					 | 
				
			||||||
Ajv.ValidationError = errorClasses.Validation;
 | 
					 | 
				
			||||||
Ajv.MissingRefError = errorClasses.MissingRef;
 | 
					 | 
				
			||||||
Ajv.$dataMetaSchema = $dataMetaSchema;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
var META_SCHEMA_ID = 'http://json-schema.org/draft-07/schema';
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
var META_IGNORE_OPTIONS = [ 'removeAdditional', 'useDefaults', 'coerceTypes', 'strictDefaults' ];
 | 
					 | 
				
			||||||
var META_SUPPORT_DATA = ['/properties'];
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/**
 | 
					 | 
				
			||||||
 * Creates validator instance.
 | 
					 | 
				
			||||||
 * Usage: `Ajv(opts)`
 | 
					 | 
				
			||||||
 * @param {Object} opts optional options
 | 
					 | 
				
			||||||
 * @return {Object} ajv instance
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
function Ajv(opts) {
 | 
					 | 
				
			||||||
  if (!(this instanceof Ajv)) return new Ajv(opts);
 | 
					 | 
				
			||||||
  opts = this._opts = util.copy(opts) || {};
 | 
					 | 
				
			||||||
  setLogger(this);
 | 
					 | 
				
			||||||
  this._schemas = {};
 | 
					 | 
				
			||||||
  this._refs = {};
 | 
					 | 
				
			||||||
  this._fragments = {};
 | 
					 | 
				
			||||||
  this._formats = formats(opts.format);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  this._cache = opts.cache || new Cache;
 | 
					 | 
				
			||||||
  this._loadingSchemas = {};
 | 
					 | 
				
			||||||
  this._compilations = [];
 | 
					 | 
				
			||||||
  this.RULES = rules();
 | 
					 | 
				
			||||||
  this._getId = chooseGetId(opts);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  opts.loopRequired = opts.loopRequired || Infinity;
 | 
					 | 
				
			||||||
  if (opts.errorDataPath == 'property') opts._errorDataPathProperty = true;
 | 
					 | 
				
			||||||
  if (opts.serialize === undefined) opts.serialize = stableStringify;
 | 
					 | 
				
			||||||
  this._metaOpts = getMetaSchemaOptions(this);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  if (opts.formats) addInitialFormats(this);
 | 
					 | 
				
			||||||
  addDefaultMetaSchema(this);
 | 
					 | 
				
			||||||
  if (typeof opts.meta == 'object') this.addMetaSchema(opts.meta);
 | 
					 | 
				
			||||||
  if (opts.nullable) this.addKeyword('nullable', {metaSchema: {type: 'boolean'}});
 | 
					 | 
				
			||||||
  addInitialSchemas(this);
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/**
 | 
					 | 
				
			||||||
 * Validate data using schema
 | 
					 | 
				
			||||||
 * Schema will be compiled and cached (using serialized JSON as key. [fast-json-stable-stringify](https://github.com/epoberezkin/fast-json-stable-stringify) is used to serialize.
 | 
					 | 
				
			||||||
 * @this   Ajv
 | 
					 | 
				
			||||||
 * @param  {String|Object} schemaKeyRef key, ref or schema object
 | 
					 | 
				
			||||||
 * @param  {Any} data to be validated
 | 
					 | 
				
			||||||
 * @return {Boolean} validation result. Errors from the last validation will be available in `ajv.errors` (and also in compiled schema: `schema.errors`).
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
function validate(schemaKeyRef, data) {
 | 
					 | 
				
			||||||
  var v;
 | 
					 | 
				
			||||||
  if (typeof schemaKeyRef == 'string') {
 | 
					 | 
				
			||||||
    v = this.getSchema(schemaKeyRef);
 | 
					 | 
				
			||||||
    if (!v) throw new Error('no schema with key or ref "' + schemaKeyRef + '"');
 | 
					 | 
				
			||||||
  } else {
 | 
					 | 
				
			||||||
    var schemaObj = this._addSchema(schemaKeyRef);
 | 
					 | 
				
			||||||
    v = schemaObj.validate || this._compile(schemaObj);
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  var valid = v(data);
 | 
					 | 
				
			||||||
  if (v.$async !== true) this.errors = v.errors;
 | 
					 | 
				
			||||||
  return valid;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/**
 | 
					 | 
				
			||||||
 * Create validating function for passed schema.
 | 
					 | 
				
			||||||
 * @this   Ajv
 | 
					 | 
				
			||||||
 * @param  {Object} schema schema object
 | 
					 | 
				
			||||||
 * @param  {Boolean} _meta true if schema is a meta-schema. Used internally to compile meta schemas of custom keywords.
 | 
					 | 
				
			||||||
 * @return {Function} validating function
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
function compile(schema, _meta) {
 | 
					 | 
				
			||||||
  var schemaObj = this._addSchema(schema, undefined, _meta);
 | 
					 | 
				
			||||||
  return schemaObj.validate || this._compile(schemaObj);
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/**
 | 
					 | 
				
			||||||
 * Adds schema to the instance.
 | 
					 | 
				
			||||||
 * @this   Ajv
 | 
					 | 
				
			||||||
 * @param {Object|Array} schema schema or array of schemas. If array is passed, `key` and other parameters will be ignored.
 | 
					 | 
				
			||||||
 * @param {String} key Optional schema key. Can be passed to `validate` method instead of schema object or id/ref. One schema per instance can have empty `id` and `key`.
 | 
					 | 
				
			||||||
 * @param {Boolean} _skipValidation true to skip schema validation. Used internally, option validateSchema should be used instead.
 | 
					 | 
				
			||||||
 * @param {Boolean} _meta true if schema is a meta-schema. Used internally, addMetaSchema should be used instead.
 | 
					 | 
				
			||||||
 * @return {Ajv} this for method chaining
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
function addSchema(schema, key, _skipValidation, _meta) {
 | 
					 | 
				
			||||||
  if (Array.isArray(schema)){
 | 
					 | 
				
			||||||
    for (var i=0; i<schema.length; i++) this.addSchema(schema[i], undefined, _skipValidation, _meta);
 | 
					 | 
				
			||||||
    return this;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
  var id = this._getId(schema);
 | 
					 | 
				
			||||||
  if (id !== undefined && typeof id != 'string')
 | 
					 | 
				
			||||||
    throw new Error('schema id must be string');
 | 
					 | 
				
			||||||
  key = resolve.normalizeId(key || id);
 | 
					 | 
				
			||||||
  checkUnique(this, key);
 | 
					 | 
				
			||||||
  this._schemas[key] = this._addSchema(schema, _skipValidation, _meta, true);
 | 
					 | 
				
			||||||
  return this;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/**
 | 
					 | 
				
			||||||
 * Add schema that will be used to validate other schemas
 | 
					 | 
				
			||||||
 * options in META_IGNORE_OPTIONS are alway set to false
 | 
					 | 
				
			||||||
 * @this   Ajv
 | 
					 | 
				
			||||||
 * @param {Object} schema schema object
 | 
					 | 
				
			||||||
 * @param {String} key optional schema key
 | 
					 | 
				
			||||||
 * @param {Boolean} skipValidation true to skip schema validation, can be used to override validateSchema option for meta-schema
 | 
					 | 
				
			||||||
 * @return {Ajv} this for method chaining
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
function addMetaSchema(schema, key, skipValidation) {
 | 
					 | 
				
			||||||
  this.addSchema(schema, key, skipValidation, true);
 | 
					 | 
				
			||||||
  return this;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/**
 | 
					 | 
				
			||||||
 * Validate schema
 | 
					 | 
				
			||||||
 * @this   Ajv
 | 
					 | 
				
			||||||
 * @param {Object} schema schema to validate
 | 
					 | 
				
			||||||
 * @param {Boolean} throwOrLogError pass true to throw (or log) an error if invalid
 | 
					 | 
				
			||||||
 * @return {Boolean} true if schema is valid
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
function validateSchema(schema, throwOrLogError) {
 | 
					 | 
				
			||||||
  var $schema = schema.$schema;
 | 
					 | 
				
			||||||
  if ($schema !== undefined && typeof $schema != 'string')
 | 
					 | 
				
			||||||
    throw new Error('$schema must be a string');
 | 
					 | 
				
			||||||
  $schema = $schema || this._opts.defaultMeta || defaultMeta(this);
 | 
					 | 
				
			||||||
  if (!$schema) {
 | 
					 | 
				
			||||||
    this.logger.warn('meta-schema not available');
 | 
					 | 
				
			||||||
    this.errors = null;
 | 
					 | 
				
			||||||
    return true;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
  var valid = this.validate($schema, schema);
 | 
					 | 
				
			||||||
  if (!valid && throwOrLogError) {
 | 
					 | 
				
			||||||
    var message = 'schema is invalid: ' + this.errorsText();
 | 
					 | 
				
			||||||
    if (this._opts.validateSchema == 'log') this.logger.error(message);
 | 
					 | 
				
			||||||
    else throw new Error(message);
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
  return valid;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function defaultMeta(self) {
 | 
					 | 
				
			||||||
  var meta = self._opts.meta;
 | 
					 | 
				
			||||||
  self._opts.defaultMeta = typeof meta == 'object'
 | 
					 | 
				
			||||||
                            ? self._getId(meta) || meta
 | 
					 | 
				
			||||||
                            : self.getSchema(META_SCHEMA_ID)
 | 
					 | 
				
			||||||
                              ? META_SCHEMA_ID
 | 
					 | 
				
			||||||
                              : undefined;
 | 
					 | 
				
			||||||
  return self._opts.defaultMeta;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/**
 | 
					 | 
				
			||||||
 * Get compiled schema from the instance by `key` or `ref`.
 | 
					 | 
				
			||||||
 * @this   Ajv
 | 
					 | 
				
			||||||
 * @param  {String} keyRef `key` that was passed to `addSchema` or full schema reference (`schema.id` or resolved id).
 | 
					 | 
				
			||||||
 * @return {Function} schema validating function (with property `schema`).
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
function getSchema(keyRef) {
 | 
					 | 
				
			||||||
  var schemaObj = _getSchemaObj(this, keyRef);
 | 
					 | 
				
			||||||
  switch (typeof schemaObj) {
 | 
					 | 
				
			||||||
    case 'object': return schemaObj.validate || this._compile(schemaObj);
 | 
					 | 
				
			||||||
    case 'string': return this.getSchema(schemaObj);
 | 
					 | 
				
			||||||
    case 'undefined': return _getSchemaFragment(this, keyRef);
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function _getSchemaFragment(self, ref) {
 | 
					 | 
				
			||||||
  var res = resolve.schema.call(self, { schema: {} }, ref);
 | 
					 | 
				
			||||||
  if (res) {
 | 
					 | 
				
			||||||
    var schema = res.schema
 | 
					 | 
				
			||||||
      , root = res.root
 | 
					 | 
				
			||||||
      , baseId = res.baseId;
 | 
					 | 
				
			||||||
    var v = compileSchema.call(self, schema, root, undefined, baseId);
 | 
					 | 
				
			||||||
    self._fragments[ref] = new SchemaObject({
 | 
					 | 
				
			||||||
      ref: ref,
 | 
					 | 
				
			||||||
      fragment: true,
 | 
					 | 
				
			||||||
      schema: schema,
 | 
					 | 
				
			||||||
      root: root,
 | 
					 | 
				
			||||||
      baseId: baseId,
 | 
					 | 
				
			||||||
      validate: v
 | 
					 | 
				
			||||||
    });
 | 
					 | 
				
			||||||
    return v;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function _getSchemaObj(self, keyRef) {
 | 
					 | 
				
			||||||
  keyRef = resolve.normalizeId(keyRef);
 | 
					 | 
				
			||||||
  return self._schemas[keyRef] || self._refs[keyRef] || self._fragments[keyRef];
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/**
 | 
					 | 
				
			||||||
 * Remove cached schema(s).
 | 
					 | 
				
			||||||
 * If no parameter is passed all schemas but meta-schemas are removed.
 | 
					 | 
				
			||||||
 * If RegExp is passed all schemas with key/id matching pattern but meta-schemas are removed.
 | 
					 | 
				
			||||||
 * Even if schema is referenced by other schemas it still can be removed as other schemas have local references.
 | 
					 | 
				
			||||||
 * @this   Ajv
 | 
					 | 
				
			||||||
 * @param  {String|Object|RegExp} schemaKeyRef key, ref, pattern to match key/ref or schema object
 | 
					 | 
				
			||||||
 * @return {Ajv} this for method chaining
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
function removeSchema(schemaKeyRef) {
 | 
					 | 
				
			||||||
  if (schemaKeyRef instanceof RegExp) {
 | 
					 | 
				
			||||||
    _removeAllSchemas(this, this._schemas, schemaKeyRef);
 | 
					 | 
				
			||||||
    _removeAllSchemas(this, this._refs, schemaKeyRef);
 | 
					 | 
				
			||||||
    return this;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
  switch (typeof schemaKeyRef) {
 | 
					 | 
				
			||||||
    case 'undefined':
 | 
					 | 
				
			||||||
      _removeAllSchemas(this, this._schemas);
 | 
					 | 
				
			||||||
      _removeAllSchemas(this, this._refs);
 | 
					 | 
				
			||||||
      this._cache.clear();
 | 
					 | 
				
			||||||
      return this;
 | 
					 | 
				
			||||||
    case 'string':
 | 
					 | 
				
			||||||
      var schemaObj = _getSchemaObj(this, schemaKeyRef);
 | 
					 | 
				
			||||||
      if (schemaObj) this._cache.del(schemaObj.cacheKey);
 | 
					 | 
				
			||||||
      delete this._schemas[schemaKeyRef];
 | 
					 | 
				
			||||||
      delete this._refs[schemaKeyRef];
 | 
					 | 
				
			||||||
      return this;
 | 
					 | 
				
			||||||
    case 'object':
 | 
					 | 
				
			||||||
      var serialize = this._opts.serialize;
 | 
					 | 
				
			||||||
      var cacheKey = serialize ? serialize(schemaKeyRef) : schemaKeyRef;
 | 
					 | 
				
			||||||
      this._cache.del(cacheKey);
 | 
					 | 
				
			||||||
      var id = this._getId(schemaKeyRef);
 | 
					 | 
				
			||||||
      if (id) {
 | 
					 | 
				
			||||||
        id = resolve.normalizeId(id);
 | 
					 | 
				
			||||||
        delete this._schemas[id];
 | 
					 | 
				
			||||||
        delete this._refs[id];
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
  return this;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function _removeAllSchemas(self, schemas, regex) {
 | 
					 | 
				
			||||||
  for (var keyRef in schemas) {
 | 
					 | 
				
			||||||
    var schemaObj = schemas[keyRef];
 | 
					 | 
				
			||||||
    if (!schemaObj.meta && (!regex || regex.test(keyRef))) {
 | 
					 | 
				
			||||||
      self._cache.del(schemaObj.cacheKey);
 | 
					 | 
				
			||||||
      delete schemas[keyRef];
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/* @this   Ajv */
 | 
					 | 
				
			||||||
function _addSchema(schema, skipValidation, meta, shouldAddSchema) {
 | 
					 | 
				
			||||||
  if (typeof schema != 'object' && typeof schema != 'boolean')
 | 
					 | 
				
			||||||
    throw new Error('schema should be object or boolean');
 | 
					 | 
				
			||||||
  var serialize = this._opts.serialize;
 | 
					 | 
				
			||||||
  var cacheKey = serialize ? serialize(schema) : schema;
 | 
					 | 
				
			||||||
  var cached = this._cache.get(cacheKey);
 | 
					 | 
				
			||||||
  if (cached) return cached;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  shouldAddSchema = shouldAddSchema || this._opts.addUsedSchema !== false;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  var id = resolve.normalizeId(this._getId(schema));
 | 
					 | 
				
			||||||
  if (id && shouldAddSchema) checkUnique(this, id);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  var willValidate = this._opts.validateSchema !== false && !skipValidation;
 | 
					 | 
				
			||||||
  var recursiveMeta;
 | 
					 | 
				
			||||||
  if (willValidate && !(recursiveMeta = id && id == resolve.normalizeId(schema.$schema)))
 | 
					 | 
				
			||||||
    this.validateSchema(schema, true);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  var localRefs = resolve.ids.call(this, schema);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  var schemaObj = new SchemaObject({
 | 
					 | 
				
			||||||
    id: id,
 | 
					 | 
				
			||||||
    schema: schema,
 | 
					 | 
				
			||||||
    localRefs: localRefs,
 | 
					 | 
				
			||||||
    cacheKey: cacheKey,
 | 
					 | 
				
			||||||
    meta: meta
 | 
					 | 
				
			||||||
  });
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  if (id[0] != '#' && shouldAddSchema) this._refs[id] = schemaObj;
 | 
					 | 
				
			||||||
  this._cache.put(cacheKey, schemaObj);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  if (willValidate && recursiveMeta) this.validateSchema(schema, true);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  return schemaObj;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/* @this   Ajv */
 | 
					 | 
				
			||||||
function _compile(schemaObj, root) {
 | 
					 | 
				
			||||||
  if (schemaObj.compiling) {
 | 
					 | 
				
			||||||
    schemaObj.validate = callValidate;
 | 
					 | 
				
			||||||
    callValidate.schema = schemaObj.schema;
 | 
					 | 
				
			||||||
    callValidate.errors = null;
 | 
					 | 
				
			||||||
    callValidate.root = root ? root : callValidate;
 | 
					 | 
				
			||||||
    if (schemaObj.schema.$async === true)
 | 
					 | 
				
			||||||
      callValidate.$async = true;
 | 
					 | 
				
			||||||
    return callValidate;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
  schemaObj.compiling = true;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  var currentOpts;
 | 
					 | 
				
			||||||
  if (schemaObj.meta) {
 | 
					 | 
				
			||||||
    currentOpts = this._opts;
 | 
					 | 
				
			||||||
    this._opts = this._metaOpts;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  var v;
 | 
					 | 
				
			||||||
  try { v = compileSchema.call(this, schemaObj.schema, root, schemaObj.localRefs); }
 | 
					 | 
				
			||||||
  catch(e) {
 | 
					 | 
				
			||||||
    delete schemaObj.validate;
 | 
					 | 
				
			||||||
    throw e;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
  finally {
 | 
					 | 
				
			||||||
    schemaObj.compiling = false;
 | 
					 | 
				
			||||||
    if (schemaObj.meta) this._opts = currentOpts;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  schemaObj.validate = v;
 | 
					 | 
				
			||||||
  schemaObj.refs = v.refs;
 | 
					 | 
				
			||||||
  schemaObj.refVal = v.refVal;
 | 
					 | 
				
			||||||
  schemaObj.root = v.root;
 | 
					 | 
				
			||||||
  return v;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  /* @this   {*} - custom context, see passContext option */
 | 
					 | 
				
			||||||
  function callValidate() {
 | 
					 | 
				
			||||||
    /* jshint validthis: true */
 | 
					 | 
				
			||||||
    var _validate = schemaObj.validate;
 | 
					 | 
				
			||||||
    var result = _validate.apply(this, arguments);
 | 
					 | 
				
			||||||
    callValidate.errors = _validate.errors;
 | 
					 | 
				
			||||||
    return result;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function chooseGetId(opts) {
 | 
					 | 
				
			||||||
  switch (opts.schemaId) {
 | 
					 | 
				
			||||||
    case 'auto': return _get$IdOrId;
 | 
					 | 
				
			||||||
    case 'id': return _getId;
 | 
					 | 
				
			||||||
    default: return _get$Id;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/* @this   Ajv */
 | 
					 | 
				
			||||||
function _getId(schema) {
 | 
					 | 
				
			||||||
  if (schema.$id) this.logger.warn('schema $id ignored', schema.$id);
 | 
					 | 
				
			||||||
  return schema.id;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/* @this   Ajv */
 | 
					 | 
				
			||||||
function _get$Id(schema) {
 | 
					 | 
				
			||||||
  if (schema.id) this.logger.warn('schema id ignored', schema.id);
 | 
					 | 
				
			||||||
  return schema.$id;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function _get$IdOrId(schema) {
 | 
					 | 
				
			||||||
  if (schema.$id && schema.id && schema.$id != schema.id)
 | 
					 | 
				
			||||||
    throw new Error('schema $id is different from id');
 | 
					 | 
				
			||||||
  return schema.$id || schema.id;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/**
 | 
					 | 
				
			||||||
 * Convert array of error message objects to string
 | 
					 | 
				
			||||||
 * @this   Ajv
 | 
					 | 
				
			||||||
 * @param  {Array<Object>} errors optional array of validation errors, if not passed errors from the instance are used.
 | 
					 | 
				
			||||||
 * @param  {Object} options optional options with properties `separator` and `dataVar`.
 | 
					 | 
				
			||||||
 * @return {String} human readable string with all errors descriptions
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
function errorsText(errors, options) {
 | 
					 | 
				
			||||||
  errors = errors || this.errors;
 | 
					 | 
				
			||||||
  if (!errors) return 'No errors';
 | 
					 | 
				
			||||||
  options = options || {};
 | 
					 | 
				
			||||||
  var separator = options.separator === undefined ? ', ' : options.separator;
 | 
					 | 
				
			||||||
  var dataVar = options.dataVar === undefined ? 'data' : options.dataVar;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  var text = '';
 | 
					 | 
				
			||||||
  for (var i=0; i<errors.length; i++) {
 | 
					 | 
				
			||||||
    var e = errors[i];
 | 
					 | 
				
			||||||
    if (e) text += dataVar + e.dataPath + ' ' + e.message + separator;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
  return text.slice(0, -separator.length);
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/**
 | 
					 | 
				
			||||||
 * Add custom format
 | 
					 | 
				
			||||||
 * @this   Ajv
 | 
					 | 
				
			||||||
 * @param {String} name format name
 | 
					 | 
				
			||||||
 * @param {String|RegExp|Function} format string is converted to RegExp; function should return boolean (true when valid)
 | 
					 | 
				
			||||||
 * @return {Ajv} this for method chaining
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
function addFormat(name, format) {
 | 
					 | 
				
			||||||
  if (typeof format == 'string') format = new RegExp(format);
 | 
					 | 
				
			||||||
  this._formats[name] = format;
 | 
					 | 
				
			||||||
  return this;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function addDefaultMetaSchema(self) {
 | 
					 | 
				
			||||||
  var $dataSchema;
 | 
					 | 
				
			||||||
  if (self._opts.$data) {
 | 
					 | 
				
			||||||
    $dataSchema = require('./refs/data.json');
 | 
					 | 
				
			||||||
    self.addMetaSchema($dataSchema, $dataSchema.$id, true);
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
  if (self._opts.meta === false) return;
 | 
					 | 
				
			||||||
  var metaSchema = require('./refs/json-schema-draft-07.json');
 | 
					 | 
				
			||||||
  if (self._opts.$data) metaSchema = $dataMetaSchema(metaSchema, META_SUPPORT_DATA);
 | 
					 | 
				
			||||||
  self.addMetaSchema(metaSchema, META_SCHEMA_ID, true);
 | 
					 | 
				
			||||||
  self._refs['http://json-schema.org/schema'] = META_SCHEMA_ID;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function addInitialSchemas(self) {
 | 
					 | 
				
			||||||
  var optsSchemas = self._opts.schemas;
 | 
					 | 
				
			||||||
  if (!optsSchemas) return;
 | 
					 | 
				
			||||||
  if (Array.isArray(optsSchemas)) self.addSchema(optsSchemas);
 | 
					 | 
				
			||||||
  else for (var key in optsSchemas) self.addSchema(optsSchemas[key], key);
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function addInitialFormats(self) {
 | 
					 | 
				
			||||||
  for (var name in self._opts.formats) {
 | 
					 | 
				
			||||||
    var format = self._opts.formats[name];
 | 
					 | 
				
			||||||
    self.addFormat(name, format);
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function checkUnique(self, id) {
 | 
					 | 
				
			||||||
  if (self._schemas[id] || self._refs[id])
 | 
					 | 
				
			||||||
    throw new Error('schema with key or id "' + id + '" already exists');
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function getMetaSchemaOptions(self) {
 | 
					 | 
				
			||||||
  var metaOpts = util.copy(self._opts);
 | 
					 | 
				
			||||||
  for (var i=0; i<META_IGNORE_OPTIONS.length; i++)
 | 
					 | 
				
			||||||
    delete metaOpts[META_IGNORE_OPTIONS[i]];
 | 
					 | 
				
			||||||
  return metaOpts;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function setLogger(self) {
 | 
					 | 
				
			||||||
  var logger = self._opts.logger;
 | 
					 | 
				
			||||||
  if (logger === false) {
 | 
					 | 
				
			||||||
    self.logger = {log: noop, warn: noop, error: noop};
 | 
					 | 
				
			||||||
  } else {
 | 
					 | 
				
			||||||
    if (logger === undefined) logger = console;
 | 
					 | 
				
			||||||
    if (!(typeof logger == 'object' && logger.log && logger.warn && logger.error))
 | 
					 | 
				
			||||||
      throw new Error('logger must implement log, warn and error methods');
 | 
					 | 
				
			||||||
    self.logger = logger;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function noop() {}
 | 
					 | 
				
			||||||
							
								
								
									
										26
									
								
								node_modules/ajv/lib/cache.js
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										26
									
								
								node_modules/ajv/lib/cache.js
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,26 +0,0 @@
 | 
				
			|||||||
'use strict';
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
var Cache = module.exports = function Cache() {
 | 
					 | 
				
			||||||
  this._cache = {};
 | 
					 | 
				
			||||||
};
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Cache.prototype.put = function Cache_put(key, value) {
 | 
					 | 
				
			||||||
  this._cache[key] = value;
 | 
					 | 
				
			||||||
};
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Cache.prototype.get = function Cache_get(key) {
 | 
					 | 
				
			||||||
  return this._cache[key];
 | 
					 | 
				
			||||||
};
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Cache.prototype.del = function Cache_del(key) {
 | 
					 | 
				
			||||||
  delete this._cache[key];
 | 
					 | 
				
			||||||
};
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
Cache.prototype.clear = function Cache_clear() {
 | 
					 | 
				
			||||||
  this._cache = {};
 | 
					 | 
				
			||||||
};
 | 
					 | 
				
			||||||
							
								
								
									
										90
									
								
								node_modules/ajv/lib/compile/async.js
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										90
									
								
								node_modules/ajv/lib/compile/async.js
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,90 +0,0 @@
 | 
				
			|||||||
'use strict';
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
var MissingRefError = require('./error_classes').MissingRef;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
module.exports = compileAsync;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/**
 | 
					 | 
				
			||||||
 * Creates validating function for passed schema with asynchronous loading of missing schemas.
 | 
					 | 
				
			||||||
 * `loadSchema` option should be a function that accepts schema uri and returns promise that resolves with the schema.
 | 
					 | 
				
			||||||
 * @this  Ajv
 | 
					 | 
				
			||||||
 * @param {Object}   schema schema object
 | 
					 | 
				
			||||||
 * @param {Boolean}  meta optional true to compile meta-schema; this parameter can be skipped
 | 
					 | 
				
			||||||
 * @param {Function} callback an optional node-style callback, it is called with 2 parameters: error (or null) and validating function.
 | 
					 | 
				
			||||||
 * @return {Promise} promise that resolves with a validating function.
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
function compileAsync(schema, meta, callback) {
 | 
					 | 
				
			||||||
  /* eslint no-shadow: 0 */
 | 
					 | 
				
			||||||
  /* global Promise */
 | 
					 | 
				
			||||||
  /* jshint validthis: true */
 | 
					 | 
				
			||||||
  var self = this;
 | 
					 | 
				
			||||||
  if (typeof this._opts.loadSchema != 'function')
 | 
					 | 
				
			||||||
    throw new Error('options.loadSchema should be a function');
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  if (typeof meta == 'function') {
 | 
					 | 
				
			||||||
    callback = meta;
 | 
					 | 
				
			||||||
    meta = undefined;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  var p = loadMetaSchemaOf(schema).then(function () {
 | 
					 | 
				
			||||||
    var schemaObj = self._addSchema(schema, undefined, meta);
 | 
					 | 
				
			||||||
    return schemaObj.validate || _compileAsync(schemaObj);
 | 
					 | 
				
			||||||
  });
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  if (callback) {
 | 
					 | 
				
			||||||
    p.then(
 | 
					 | 
				
			||||||
      function(v) { callback(null, v); },
 | 
					 | 
				
			||||||
      callback
 | 
					 | 
				
			||||||
    );
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  return p;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  function loadMetaSchemaOf(sch) {
 | 
					 | 
				
			||||||
    var $schema = sch.$schema;
 | 
					 | 
				
			||||||
    return $schema && !self.getSchema($schema)
 | 
					 | 
				
			||||||
            ? compileAsync.call(self, { $ref: $schema }, true)
 | 
					 | 
				
			||||||
            : Promise.resolve();
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  function _compileAsync(schemaObj) {
 | 
					 | 
				
			||||||
    try { return self._compile(schemaObj); }
 | 
					 | 
				
			||||||
    catch(e) {
 | 
					 | 
				
			||||||
      if (e instanceof MissingRefError) return loadMissingSchema(e);
 | 
					 | 
				
			||||||
      throw e;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    function loadMissingSchema(e) {
 | 
					 | 
				
			||||||
      var ref = e.missingSchema;
 | 
					 | 
				
			||||||
      if (added(ref)) throw new Error('Schema ' + ref + ' is loaded but ' + e.missingRef + ' cannot be resolved');
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      var schemaPromise = self._loadingSchemas[ref];
 | 
					 | 
				
			||||||
      if (!schemaPromise) {
 | 
					 | 
				
			||||||
        schemaPromise = self._loadingSchemas[ref] = self._opts.loadSchema(ref);
 | 
					 | 
				
			||||||
        schemaPromise.then(removePromise, removePromise);
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      return schemaPromise.then(function (sch) {
 | 
					 | 
				
			||||||
        if (!added(ref)) {
 | 
					 | 
				
			||||||
          return loadMetaSchemaOf(sch).then(function () {
 | 
					 | 
				
			||||||
            if (!added(ref)) self.addSchema(sch, ref, undefined, meta);
 | 
					 | 
				
			||||||
          });
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
      }).then(function() {
 | 
					 | 
				
			||||||
        return _compileAsync(schemaObj);
 | 
					 | 
				
			||||||
      });
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      function removePromise() {
 | 
					 | 
				
			||||||
        delete self._loadingSchemas[ref];
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      function added(ref) {
 | 
					 | 
				
			||||||
        return self._refs[ref] || self._schemas[ref];
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										5
									
								
								node_modules/ajv/lib/compile/equal.js
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										5
									
								
								node_modules/ajv/lib/compile/equal.js
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,5 +0,0 @@
 | 
				
			|||||||
'use strict';
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// do NOT remove this file - it would break pre-compiled schemas
 | 
					 | 
				
			||||||
// https://github.com/epoberezkin/ajv/issues/889
 | 
					 | 
				
			||||||
module.exports = require('fast-deep-equal');
 | 
					 | 
				
			||||||
							
								
								
									
										34
									
								
								node_modules/ajv/lib/compile/error_classes.js
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										34
									
								
								node_modules/ajv/lib/compile/error_classes.js
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,34 +0,0 @@
 | 
				
			|||||||
'use strict';
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
var resolve = require('./resolve');
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
module.exports = {
 | 
					 | 
				
			||||||
  Validation: errorSubclass(ValidationError),
 | 
					 | 
				
			||||||
  MissingRef: errorSubclass(MissingRefError)
 | 
					 | 
				
			||||||
};
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function ValidationError(errors) {
 | 
					 | 
				
			||||||
  this.message = 'validation failed';
 | 
					 | 
				
			||||||
  this.errors = errors;
 | 
					 | 
				
			||||||
  this.ajv = this.validation = true;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
MissingRefError.message = function (baseId, ref) {
 | 
					 | 
				
			||||||
  return 'can\'t resolve reference ' + ref + ' from id ' + baseId;
 | 
					 | 
				
			||||||
};
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function MissingRefError(baseId, ref, message) {
 | 
					 | 
				
			||||||
  this.message = message || MissingRefError.message(baseId, ref);
 | 
					 | 
				
			||||||
  this.missingRef = resolve.url(baseId, ref);
 | 
					 | 
				
			||||||
  this.missingSchema = resolve.normalizeId(resolve.fullPath(this.missingRef));
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function errorSubclass(Subclass) {
 | 
					 | 
				
			||||||
  Subclass.prototype = Object.create(Error.prototype);
 | 
					 | 
				
			||||||
  Subclass.prototype.constructor = Subclass;
 | 
					 | 
				
			||||||
  return Subclass;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										149
									
								
								node_modules/ajv/lib/compile/formats.js
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										149
									
								
								node_modules/ajv/lib/compile/formats.js
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,149 +0,0 @@
 | 
				
			|||||||
'use strict';
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
var util = require('./util');
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
var DATE = /^(\d\d\d\d)-(\d\d)-(\d\d)$/;
 | 
					 | 
				
			||||||
var DAYS = [0,31,28,31,30,31,30,31,31,30,31,30,31];
 | 
					 | 
				
			||||||
var TIME = /^(\d\d):(\d\d):(\d\d)(\.\d+)?(z|[+-]\d\d:\d\d)?$/i;
 | 
					 | 
				
			||||||
var HOSTNAME = /^[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*$/i;
 | 
					 | 
				
			||||||
var URI = /^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\?(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i;
 | 
					 | 
				
			||||||
var URIREF = /^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i;
 | 
					 | 
				
			||||||
// uri-template: https://tools.ietf.org/html/rfc6570
 | 
					 | 
				
			||||||
var URITEMPLATE = /^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i;
 | 
					 | 
				
			||||||
// For the source: https://gist.github.com/dperini/729294
 | 
					 | 
				
			||||||
// For test cases: https://mathiasbynens.be/demo/url-regex
 | 
					 | 
				
			||||||
// @todo Delete current URL in favour of the commented out URL rule when this issue is fixed https://github.com/eslint/eslint/issues/7983.
 | 
					 | 
				
			||||||
// var URL = /^(?:(?:https?|ftp):\/\/)(?:\S+(?::\S*)?@)?(?:(?!10(?:\.\d{1,3}){3})(?!127(?:\.\d{1,3}){3})(?!169\.254(?:\.\d{1,3}){2})(?!192\.168(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z\u{00a1}-\u{ffff}0-9]+-?)*[a-z\u{00a1}-\u{ffff}0-9]+)(?:\.(?:[a-z\u{00a1}-\u{ffff}0-9]+-?)*[a-z\u{00a1}-\u{ffff}0-9]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu;
 | 
					 | 
				
			||||||
var URL = /^(?:(?:http[s\u017F]?|ftp):\/\/)(?:(?:[\0-\x08\x0E-\x1F!-\x9F\xA1-\u167F\u1681-\u1FFF\u200B-\u2027\u202A-\u202E\u2030-\u205E\u2060-\u2FFF\u3001-\uD7FF\uE000-\uFEFE\uFF00-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+(?::(?:[\0-\x08\x0E-\x1F!-\x9F\xA1-\u167F\u1681-\u1FFF\u200B-\u2027\u202A-\u202E\u2030-\u205E\u2060-\u2FFF\u3001-\uD7FF\uE000-\uFEFE\uFF00-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])*)?@)?(?:(?!10(?:\.[0-9]{1,3}){3})(?!127(?:\.[0-9]{1,3}){3})(?!169\.254(?:\.[0-9]{1,3}){2})(?!192\.168(?:\.[0-9]{1,3}){2})(?!172\.(?:1[6-9]|2[0-9]|3[01])(?:\.[0-9]{1,3}){2})(?:[1-9][0-9]?|1[0-9][0-9]|2[01][0-9]|22[0-3])(?:\.(?:1?[0-9]{1,2}|2[0-4][0-9]|25[0-5])){2}(?:\.(?:[1-9][0-9]?|1[0-9][0-9]|2[0-4][0-9]|25[0-4]))|(?:(?:(?:[0-9KSa-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+-?)*(?:[0-9KSa-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+)(?:\.(?:(?:[0-9KSa-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+-?)*(?:[0-9KSa-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])+)*(?:\.(?:(?:[KSa-z\xA1-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]){2,})))(?::[0-9]{2,5})?(?:\/(?:[\0-\x08\x0E-\x1F!-\x9F\xA1-\u167F\u1681-\u1FFF\u200B-\u2027\u202A-\u202E\u2030-\u205E\u2060-\u2FFF\u3001-\uD7FF\uE000-\uFEFE\uFF00-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])*)?$/i;
 | 
					 | 
				
			||||||
var UUID = /^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i;
 | 
					 | 
				
			||||||
var JSON_POINTER = /^(?:\/(?:[^~/]|~0|~1)*)*$/;
 | 
					 | 
				
			||||||
var JSON_POINTER_URI_FRAGMENT = /^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i;
 | 
					 | 
				
			||||||
var RELATIVE_JSON_POINTER = /^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
module.exports = formats;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function formats(mode) {
 | 
					 | 
				
			||||||
  mode = mode == 'full' ? 'full' : 'fast';
 | 
					 | 
				
			||||||
  return util.copy(formats[mode]);
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
formats.fast = {
 | 
					 | 
				
			||||||
  // date: http://tools.ietf.org/html/rfc3339#section-5.6
 | 
					 | 
				
			||||||
  date: /^\d\d\d\d-[0-1]\d-[0-3]\d$/,
 | 
					 | 
				
			||||||
  // date-time: http://tools.ietf.org/html/rfc3339#section-5.6
 | 
					 | 
				
			||||||
  time: /^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d:\d\d)?$/i,
 | 
					 | 
				
			||||||
  'date-time': /^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d:\d\d)$/i,
 | 
					 | 
				
			||||||
  // uri: https://github.com/mafintosh/is-my-json-valid/blob/master/formats.js
 | 
					 | 
				
			||||||
  uri: /^(?:[a-z][a-z0-9+-.]*:)(?:\/?\/)?[^\s]*$/i,
 | 
					 | 
				
			||||||
  'uri-reference': /^(?:(?:[a-z][a-z0-9+-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,
 | 
					 | 
				
			||||||
  'uri-template': URITEMPLATE,
 | 
					 | 
				
			||||||
  url: URL,
 | 
					 | 
				
			||||||
  // email (sources from jsen validator):
 | 
					 | 
				
			||||||
  // http://stackoverflow.com/questions/201323/using-a-regular-expression-to-validate-an-email-address#answer-8829363
 | 
					 | 
				
			||||||
  // http://www.w3.org/TR/html5/forms.html#valid-e-mail-address (search for 'willful violation')
 | 
					 | 
				
			||||||
  email: /^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i,
 | 
					 | 
				
			||||||
  hostname: HOSTNAME,
 | 
					 | 
				
			||||||
  // optimized https://www.safaribooksonline.com/library/view/regular-expressions-cookbook/9780596802837/ch07s16.html
 | 
					 | 
				
			||||||
  ipv4: /^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/,
 | 
					 | 
				
			||||||
  // optimized http://stackoverflow.com/questions/53497/regular-expression-that-matches-valid-ipv6-addresses
 | 
					 | 
				
			||||||
  ipv6: /^\s*(?:(?:(?:[0-9a-f]{1,4}:){7}(?:[0-9a-f]{1,4}|:))|(?:(?:[0-9a-f]{1,4}:){6}(?::[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){5}(?:(?:(?::[0-9a-f]{1,4}){1,2})|:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){4}(?:(?:(?::[0-9a-f]{1,4}){1,3})|(?:(?::[0-9a-f]{1,4})?:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){3}(?:(?:(?::[0-9a-f]{1,4}){1,4})|(?:(?::[0-9a-f]{1,4}){0,2}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){2}(?:(?:(?::[0-9a-f]{1,4}){1,5})|(?:(?::[0-9a-f]{1,4}){0,3}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){1}(?:(?:(?::[0-9a-f]{1,4}){1,6})|(?:(?::[0-9a-f]{1,4}){0,4}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?::(?:(?:(?::[0-9a-f]{1,4}){1,7})|(?:(?::[0-9a-f]{1,4}){0,5}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(?:%.+)?\s*$/i,
 | 
					 | 
				
			||||||
  regex: regex,
 | 
					 | 
				
			||||||
  // uuid: http://tools.ietf.org/html/rfc4122
 | 
					 | 
				
			||||||
  uuid: UUID,
 | 
					 | 
				
			||||||
  // JSON-pointer: https://tools.ietf.org/html/rfc6901
 | 
					 | 
				
			||||||
  // uri fragment: https://tools.ietf.org/html/rfc3986#appendix-A
 | 
					 | 
				
			||||||
  'json-pointer': JSON_POINTER,
 | 
					 | 
				
			||||||
  'json-pointer-uri-fragment': JSON_POINTER_URI_FRAGMENT,
 | 
					 | 
				
			||||||
  // relative JSON-pointer: http://tools.ietf.org/html/draft-luff-relative-json-pointer-00
 | 
					 | 
				
			||||||
  'relative-json-pointer': RELATIVE_JSON_POINTER
 | 
					 | 
				
			||||||
};
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
formats.full = {
 | 
					 | 
				
			||||||
  date: date,
 | 
					 | 
				
			||||||
  time: time,
 | 
					 | 
				
			||||||
  'date-time': date_time,
 | 
					 | 
				
			||||||
  uri: uri,
 | 
					 | 
				
			||||||
  'uri-reference': URIREF,
 | 
					 | 
				
			||||||
  'uri-template': URITEMPLATE,
 | 
					 | 
				
			||||||
  url: URL,
 | 
					 | 
				
			||||||
  email: /^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,
 | 
					 | 
				
			||||||
  hostname: hostname,
 | 
					 | 
				
			||||||
  ipv4: /^(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)$/,
 | 
					 | 
				
			||||||
  ipv6: /^\s*(?:(?:(?:[0-9a-f]{1,4}:){7}(?:[0-9a-f]{1,4}|:))|(?:(?:[0-9a-f]{1,4}:){6}(?::[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){5}(?:(?:(?::[0-9a-f]{1,4}){1,2})|:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(?:(?:[0-9a-f]{1,4}:){4}(?:(?:(?::[0-9a-f]{1,4}){1,3})|(?:(?::[0-9a-f]{1,4})?:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){3}(?:(?:(?::[0-9a-f]{1,4}){1,4})|(?:(?::[0-9a-f]{1,4}){0,2}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){2}(?:(?:(?::[0-9a-f]{1,4}){1,5})|(?:(?::[0-9a-f]{1,4}){0,3}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?:(?:[0-9a-f]{1,4}:){1}(?:(?:(?::[0-9a-f]{1,4}){1,6})|(?:(?::[0-9a-f]{1,4}){0,4}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(?::(?:(?:(?::[0-9a-f]{1,4}){1,7})|(?:(?::[0-9a-f]{1,4}){0,5}:(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(?:\.(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))(?:%.+)?\s*$/i,
 | 
					 | 
				
			||||||
  regex: regex,
 | 
					 | 
				
			||||||
  uuid: UUID,
 | 
					 | 
				
			||||||
  'json-pointer': JSON_POINTER,
 | 
					 | 
				
			||||||
  'json-pointer-uri-fragment': JSON_POINTER_URI_FRAGMENT,
 | 
					 | 
				
			||||||
  'relative-json-pointer': RELATIVE_JSON_POINTER
 | 
					 | 
				
			||||||
};
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function isLeapYear(year) {
 | 
					 | 
				
			||||||
  // https://tools.ietf.org/html/rfc3339#appendix-C
 | 
					 | 
				
			||||||
  return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0);
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function date(str) {
 | 
					 | 
				
			||||||
  // full-date from http://tools.ietf.org/html/rfc3339#section-5.6
 | 
					 | 
				
			||||||
  var matches = str.match(DATE);
 | 
					 | 
				
			||||||
  if (!matches) return false;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  var year = +matches[1];
 | 
					 | 
				
			||||||
  var month = +matches[2];
 | 
					 | 
				
			||||||
  var day = +matches[3];
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  return month >= 1 && month <= 12 && day >= 1 &&
 | 
					 | 
				
			||||||
          day <= (month == 2 && isLeapYear(year) ? 29 : DAYS[month]);
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function time(str, full) {
 | 
					 | 
				
			||||||
  var matches = str.match(TIME);
 | 
					 | 
				
			||||||
  if (!matches) return false;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  var hour = matches[1];
 | 
					 | 
				
			||||||
  var minute = matches[2];
 | 
					 | 
				
			||||||
  var second = matches[3];
 | 
					 | 
				
			||||||
  var timeZone = matches[5];
 | 
					 | 
				
			||||||
  return ((hour <= 23 && minute <= 59 && second <= 59) ||
 | 
					 | 
				
			||||||
          (hour == 23 && minute == 59 && second == 60)) &&
 | 
					 | 
				
			||||||
         (!full || timeZone);
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
var DATE_TIME_SEPARATOR = /t|\s/i;
 | 
					 | 
				
			||||||
function date_time(str) {
 | 
					 | 
				
			||||||
  // http://tools.ietf.org/html/rfc3339#section-5.6
 | 
					 | 
				
			||||||
  var dateTime = str.split(DATE_TIME_SEPARATOR);
 | 
					 | 
				
			||||||
  return dateTime.length == 2 && date(dateTime[0]) && time(dateTime[1], true);
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function hostname(str) {
 | 
					 | 
				
			||||||
  // https://tools.ietf.org/html/rfc1034#section-3.5
 | 
					 | 
				
			||||||
  // https://tools.ietf.org/html/rfc1123#section-2
 | 
					 | 
				
			||||||
  return str.length <= 255 && HOSTNAME.test(str);
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
var NOT_URI_FRAGMENT = /\/|:/;
 | 
					 | 
				
			||||||
function uri(str) {
 | 
					 | 
				
			||||||
  // http://jmrware.com/articles/2009/uri_regexp/URI_regex.html + optional protocol + required "."
 | 
					 | 
				
			||||||
  return NOT_URI_FRAGMENT.test(str) && URI.test(str);
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
var Z_ANCHOR = /[^\\]\\Z/;
 | 
					 | 
				
			||||||
function regex(str) {
 | 
					 | 
				
			||||||
  if (Z_ANCHOR.test(str)) return false;
 | 
					 | 
				
			||||||
  try {
 | 
					 | 
				
			||||||
    new RegExp(str);
 | 
					 | 
				
			||||||
    return true;
 | 
					 | 
				
			||||||
  } catch(e) {
 | 
					 | 
				
			||||||
    return false;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										387
									
								
								node_modules/ajv/lib/compile/index.js
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										387
									
								
								node_modules/ajv/lib/compile/index.js
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,387 +0,0 @@
 | 
				
			|||||||
'use strict';
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
var resolve = require('./resolve')
 | 
					 | 
				
			||||||
  , util = require('./util')
 | 
					 | 
				
			||||||
  , errorClasses = require('./error_classes')
 | 
					 | 
				
			||||||
  , stableStringify = require('fast-json-stable-stringify');
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
var validateGenerator = require('../dotjs/validate');
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/**
 | 
					 | 
				
			||||||
 * Functions below are used inside compiled validations function
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
var ucs2length = util.ucs2length;
 | 
					 | 
				
			||||||
var equal = require('fast-deep-equal');
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// this error is thrown by async schemas to return validation errors via exception
 | 
					 | 
				
			||||||
var ValidationError = errorClasses.Validation;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
module.exports = compile;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/**
 | 
					 | 
				
			||||||
 * Compiles schema to validation function
 | 
					 | 
				
			||||||
 * @this   Ajv
 | 
					 | 
				
			||||||
 * @param  {Object} schema schema object
 | 
					 | 
				
			||||||
 * @param  {Object} root object with information about the root schema for this schema
 | 
					 | 
				
			||||||
 * @param  {Object} localRefs the hash of local references inside the schema (created by resolve.id), used for inline resolution
 | 
					 | 
				
			||||||
 * @param  {String} baseId base ID for IDs in the schema
 | 
					 | 
				
			||||||
 * @return {Function} validation function
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
function compile(schema, root, localRefs, baseId) {
 | 
					 | 
				
			||||||
  /* jshint validthis: true, evil: true */
 | 
					 | 
				
			||||||
  /* eslint no-shadow: 0 */
 | 
					 | 
				
			||||||
  var self = this
 | 
					 | 
				
			||||||
    , opts = this._opts
 | 
					 | 
				
			||||||
    , refVal = [ undefined ]
 | 
					 | 
				
			||||||
    , refs = {}
 | 
					 | 
				
			||||||
    , patterns = []
 | 
					 | 
				
			||||||
    , patternsHash = {}
 | 
					 | 
				
			||||||
    , defaults = []
 | 
					 | 
				
			||||||
    , defaultsHash = {}
 | 
					 | 
				
			||||||
    , customRules = [];
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  root = root || { schema: schema, refVal: refVal, refs: refs };
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  var c = checkCompiling.call(this, schema, root, baseId);
 | 
					 | 
				
			||||||
  var compilation = this._compilations[c.index];
 | 
					 | 
				
			||||||
  if (c.compiling) return (compilation.callValidate = callValidate);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  var formats = this._formats;
 | 
					 | 
				
			||||||
  var RULES = this.RULES;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  try {
 | 
					 | 
				
			||||||
    var v = localCompile(schema, root, localRefs, baseId);
 | 
					 | 
				
			||||||
    compilation.validate = v;
 | 
					 | 
				
			||||||
    var cv = compilation.callValidate;
 | 
					 | 
				
			||||||
    if (cv) {
 | 
					 | 
				
			||||||
      cv.schema = v.schema;
 | 
					 | 
				
			||||||
      cv.errors = null;
 | 
					 | 
				
			||||||
      cv.refs = v.refs;
 | 
					 | 
				
			||||||
      cv.refVal = v.refVal;
 | 
					 | 
				
			||||||
      cv.root = v.root;
 | 
					 | 
				
			||||||
      cv.$async = v.$async;
 | 
					 | 
				
			||||||
      if (opts.sourceCode) cv.source = v.source;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    return v;
 | 
					 | 
				
			||||||
  } finally {
 | 
					 | 
				
			||||||
    endCompiling.call(this, schema, root, baseId);
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  /* @this   {*} - custom context, see passContext option */
 | 
					 | 
				
			||||||
  function callValidate() {
 | 
					 | 
				
			||||||
    /* jshint validthis: true */
 | 
					 | 
				
			||||||
    var validate = compilation.validate;
 | 
					 | 
				
			||||||
    var result = validate.apply(this, arguments);
 | 
					 | 
				
			||||||
    callValidate.errors = validate.errors;
 | 
					 | 
				
			||||||
    return result;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  function localCompile(_schema, _root, localRefs, baseId) {
 | 
					 | 
				
			||||||
    var isRoot = !_root || (_root && _root.schema == _schema);
 | 
					 | 
				
			||||||
    if (_root.schema != root.schema)
 | 
					 | 
				
			||||||
      return compile.call(self, _schema, _root, localRefs, baseId);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    var $async = _schema.$async === true;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    var sourceCode = validateGenerator({
 | 
					 | 
				
			||||||
      isTop: true,
 | 
					 | 
				
			||||||
      schema: _schema,
 | 
					 | 
				
			||||||
      isRoot: isRoot,
 | 
					 | 
				
			||||||
      baseId: baseId,
 | 
					 | 
				
			||||||
      root: _root,
 | 
					 | 
				
			||||||
      schemaPath: '',
 | 
					 | 
				
			||||||
      errSchemaPath: '#',
 | 
					 | 
				
			||||||
      errorPath: '""',
 | 
					 | 
				
			||||||
      MissingRefError: errorClasses.MissingRef,
 | 
					 | 
				
			||||||
      RULES: RULES,
 | 
					 | 
				
			||||||
      validate: validateGenerator,
 | 
					 | 
				
			||||||
      util: util,
 | 
					 | 
				
			||||||
      resolve: resolve,
 | 
					 | 
				
			||||||
      resolveRef: resolveRef,
 | 
					 | 
				
			||||||
      usePattern: usePattern,
 | 
					 | 
				
			||||||
      useDefault: useDefault,
 | 
					 | 
				
			||||||
      useCustomRule: useCustomRule,
 | 
					 | 
				
			||||||
      opts: opts,
 | 
					 | 
				
			||||||
      formats: formats,
 | 
					 | 
				
			||||||
      logger: self.logger,
 | 
					 | 
				
			||||||
      self: self
 | 
					 | 
				
			||||||
    });
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    sourceCode = vars(refVal, refValCode) + vars(patterns, patternCode)
 | 
					 | 
				
			||||||
                   + vars(defaults, defaultCode) + vars(customRules, customRuleCode)
 | 
					 | 
				
			||||||
                   + sourceCode;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    if (opts.processCode) sourceCode = opts.processCode(sourceCode);
 | 
					 | 
				
			||||||
    // console.log('\n\n\n *** \n', JSON.stringify(sourceCode));
 | 
					 | 
				
			||||||
    var validate;
 | 
					 | 
				
			||||||
    try {
 | 
					 | 
				
			||||||
      var makeValidate = new Function(
 | 
					 | 
				
			||||||
        'self',
 | 
					 | 
				
			||||||
        'RULES',
 | 
					 | 
				
			||||||
        'formats',
 | 
					 | 
				
			||||||
        'root',
 | 
					 | 
				
			||||||
        'refVal',
 | 
					 | 
				
			||||||
        'defaults',
 | 
					 | 
				
			||||||
        'customRules',
 | 
					 | 
				
			||||||
        'equal',
 | 
					 | 
				
			||||||
        'ucs2length',
 | 
					 | 
				
			||||||
        'ValidationError',
 | 
					 | 
				
			||||||
        sourceCode
 | 
					 | 
				
			||||||
      );
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      validate = makeValidate(
 | 
					 | 
				
			||||||
        self,
 | 
					 | 
				
			||||||
        RULES,
 | 
					 | 
				
			||||||
        formats,
 | 
					 | 
				
			||||||
        root,
 | 
					 | 
				
			||||||
        refVal,
 | 
					 | 
				
			||||||
        defaults,
 | 
					 | 
				
			||||||
        customRules,
 | 
					 | 
				
			||||||
        equal,
 | 
					 | 
				
			||||||
        ucs2length,
 | 
					 | 
				
			||||||
        ValidationError
 | 
					 | 
				
			||||||
      );
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      refVal[0] = validate;
 | 
					 | 
				
			||||||
    } catch(e) {
 | 
					 | 
				
			||||||
      self.logger.error('Error compiling schema, function code:', sourceCode);
 | 
					 | 
				
			||||||
      throw e;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    validate.schema = _schema;
 | 
					 | 
				
			||||||
    validate.errors = null;
 | 
					 | 
				
			||||||
    validate.refs = refs;
 | 
					 | 
				
			||||||
    validate.refVal = refVal;
 | 
					 | 
				
			||||||
    validate.root = isRoot ? validate : _root;
 | 
					 | 
				
			||||||
    if ($async) validate.$async = true;
 | 
					 | 
				
			||||||
    if (opts.sourceCode === true) {
 | 
					 | 
				
			||||||
      validate.source = {
 | 
					 | 
				
			||||||
        code: sourceCode,
 | 
					 | 
				
			||||||
        patterns: patterns,
 | 
					 | 
				
			||||||
        defaults: defaults
 | 
					 | 
				
			||||||
      };
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    return validate;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  function resolveRef(baseId, ref, isRoot) {
 | 
					 | 
				
			||||||
    ref = resolve.url(baseId, ref);
 | 
					 | 
				
			||||||
    var refIndex = refs[ref];
 | 
					 | 
				
			||||||
    var _refVal, refCode;
 | 
					 | 
				
			||||||
    if (refIndex !== undefined) {
 | 
					 | 
				
			||||||
      _refVal = refVal[refIndex];
 | 
					 | 
				
			||||||
      refCode = 'refVal[' + refIndex + ']';
 | 
					 | 
				
			||||||
      return resolvedRef(_refVal, refCode);
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    if (!isRoot && root.refs) {
 | 
					 | 
				
			||||||
      var rootRefId = root.refs[ref];
 | 
					 | 
				
			||||||
      if (rootRefId !== undefined) {
 | 
					 | 
				
			||||||
        _refVal = root.refVal[rootRefId];
 | 
					 | 
				
			||||||
        refCode = addLocalRef(ref, _refVal);
 | 
					 | 
				
			||||||
        return resolvedRef(_refVal, refCode);
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    refCode = addLocalRef(ref);
 | 
					 | 
				
			||||||
    var v = resolve.call(self, localCompile, root, ref);
 | 
					 | 
				
			||||||
    if (v === undefined) {
 | 
					 | 
				
			||||||
      var localSchema = localRefs && localRefs[ref];
 | 
					 | 
				
			||||||
      if (localSchema) {
 | 
					 | 
				
			||||||
        v = resolve.inlineRef(localSchema, opts.inlineRefs)
 | 
					 | 
				
			||||||
            ? localSchema
 | 
					 | 
				
			||||||
            : compile.call(self, localSchema, root, localRefs, baseId);
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    if (v === undefined) {
 | 
					 | 
				
			||||||
      removeLocalRef(ref);
 | 
					 | 
				
			||||||
    } else {
 | 
					 | 
				
			||||||
      replaceLocalRef(ref, v);
 | 
					 | 
				
			||||||
      return resolvedRef(v, refCode);
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  function addLocalRef(ref, v) {
 | 
					 | 
				
			||||||
    var refId = refVal.length;
 | 
					 | 
				
			||||||
    refVal[refId] = v;
 | 
					 | 
				
			||||||
    refs[ref] = refId;
 | 
					 | 
				
			||||||
    return 'refVal' + refId;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  function removeLocalRef(ref) {
 | 
					 | 
				
			||||||
    delete refs[ref];
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  function replaceLocalRef(ref, v) {
 | 
					 | 
				
			||||||
    var refId = refs[ref];
 | 
					 | 
				
			||||||
    refVal[refId] = v;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  function resolvedRef(refVal, code) {
 | 
					 | 
				
			||||||
    return typeof refVal == 'object' || typeof refVal == 'boolean'
 | 
					 | 
				
			||||||
            ? { code: code, schema: refVal, inline: true }
 | 
					 | 
				
			||||||
            : { code: code, $async: refVal && !!refVal.$async };
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  function usePattern(regexStr) {
 | 
					 | 
				
			||||||
    var index = patternsHash[regexStr];
 | 
					 | 
				
			||||||
    if (index === undefined) {
 | 
					 | 
				
			||||||
      index = patternsHash[regexStr] = patterns.length;
 | 
					 | 
				
			||||||
      patterns[index] = regexStr;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    return 'pattern' + index;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  function useDefault(value) {
 | 
					 | 
				
			||||||
    switch (typeof value) {
 | 
					 | 
				
			||||||
      case 'boolean':
 | 
					 | 
				
			||||||
      case 'number':
 | 
					 | 
				
			||||||
        return '' + value;
 | 
					 | 
				
			||||||
      case 'string':
 | 
					 | 
				
			||||||
        return util.toQuotedString(value);
 | 
					 | 
				
			||||||
      case 'object':
 | 
					 | 
				
			||||||
        if (value === null) return 'null';
 | 
					 | 
				
			||||||
        var valueStr = stableStringify(value);
 | 
					 | 
				
			||||||
        var index = defaultsHash[valueStr];
 | 
					 | 
				
			||||||
        if (index === undefined) {
 | 
					 | 
				
			||||||
          index = defaultsHash[valueStr] = defaults.length;
 | 
					 | 
				
			||||||
          defaults[index] = value;
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
        return 'default' + index;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  function useCustomRule(rule, schema, parentSchema, it) {
 | 
					 | 
				
			||||||
    if (self._opts.validateSchema !== false) {
 | 
					 | 
				
			||||||
      var deps = rule.definition.dependencies;
 | 
					 | 
				
			||||||
      if (deps && !deps.every(function(keyword) {
 | 
					 | 
				
			||||||
        return Object.prototype.hasOwnProperty.call(parentSchema, keyword);
 | 
					 | 
				
			||||||
      }))
 | 
					 | 
				
			||||||
        throw new Error('parent schema must have all required keywords: ' + deps.join(','));
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      var validateSchema = rule.definition.validateSchema;
 | 
					 | 
				
			||||||
      if (validateSchema) {
 | 
					 | 
				
			||||||
        var valid = validateSchema(schema);
 | 
					 | 
				
			||||||
        if (!valid) {
 | 
					 | 
				
			||||||
          var message = 'keyword schema is invalid: ' + self.errorsText(validateSchema.errors);
 | 
					 | 
				
			||||||
          if (self._opts.validateSchema == 'log') self.logger.error(message);
 | 
					 | 
				
			||||||
          else throw new Error(message);
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    var compile = rule.definition.compile
 | 
					 | 
				
			||||||
      , inline = rule.definition.inline
 | 
					 | 
				
			||||||
      , macro = rule.definition.macro;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    var validate;
 | 
					 | 
				
			||||||
    if (compile) {
 | 
					 | 
				
			||||||
      validate = compile.call(self, schema, parentSchema, it);
 | 
					 | 
				
			||||||
    } else if (macro) {
 | 
					 | 
				
			||||||
      validate = macro.call(self, schema, parentSchema, it);
 | 
					 | 
				
			||||||
      if (opts.validateSchema !== false) self.validateSchema(validate, true);
 | 
					 | 
				
			||||||
    } else if (inline) {
 | 
					 | 
				
			||||||
      validate = inline.call(self, it, rule.keyword, schema, parentSchema);
 | 
					 | 
				
			||||||
    } else {
 | 
					 | 
				
			||||||
      validate = rule.definition.validate;
 | 
					 | 
				
			||||||
      if (!validate) return;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    if (validate === undefined)
 | 
					 | 
				
			||||||
      throw new Error('custom keyword "' + rule.keyword + '"failed to compile');
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    var index = customRules.length;
 | 
					 | 
				
			||||||
    customRules[index] = validate;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    return {
 | 
					 | 
				
			||||||
      code: 'customRule' + index,
 | 
					 | 
				
			||||||
      validate: validate
 | 
					 | 
				
			||||||
    };
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/**
 | 
					 | 
				
			||||||
 * Checks if the schema is currently compiled
 | 
					 | 
				
			||||||
 * @this   Ajv
 | 
					 | 
				
			||||||
 * @param  {Object} schema schema to compile
 | 
					 | 
				
			||||||
 * @param  {Object} root root object
 | 
					 | 
				
			||||||
 * @param  {String} baseId base schema ID
 | 
					 | 
				
			||||||
 * @return {Object} object with properties "index" (compilation index) and "compiling" (boolean)
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
function checkCompiling(schema, root, baseId) {
 | 
					 | 
				
			||||||
  /* jshint validthis: true */
 | 
					 | 
				
			||||||
  var index = compIndex.call(this, schema, root, baseId);
 | 
					 | 
				
			||||||
  if (index >= 0) return { index: index, compiling: true };
 | 
					 | 
				
			||||||
  index = this._compilations.length;
 | 
					 | 
				
			||||||
  this._compilations[index] = {
 | 
					 | 
				
			||||||
    schema: schema,
 | 
					 | 
				
			||||||
    root: root,
 | 
					 | 
				
			||||||
    baseId: baseId
 | 
					 | 
				
			||||||
  };
 | 
					 | 
				
			||||||
  return { index: index, compiling: false };
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/**
 | 
					 | 
				
			||||||
 * Removes the schema from the currently compiled list
 | 
					 | 
				
			||||||
 * @this   Ajv
 | 
					 | 
				
			||||||
 * @param  {Object} schema schema to compile
 | 
					 | 
				
			||||||
 * @param  {Object} root root object
 | 
					 | 
				
			||||||
 * @param  {String} baseId base schema ID
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
function endCompiling(schema, root, baseId) {
 | 
					 | 
				
			||||||
  /* jshint validthis: true */
 | 
					 | 
				
			||||||
  var i = compIndex.call(this, schema, root, baseId);
 | 
					 | 
				
			||||||
  if (i >= 0) this._compilations.splice(i, 1);
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/**
 | 
					 | 
				
			||||||
 * Index of schema compilation in the currently compiled list
 | 
					 | 
				
			||||||
 * @this   Ajv
 | 
					 | 
				
			||||||
 * @param  {Object} schema schema to compile
 | 
					 | 
				
			||||||
 * @param  {Object} root root object
 | 
					 | 
				
			||||||
 * @param  {String} baseId base schema ID
 | 
					 | 
				
			||||||
 * @return {Integer} compilation index
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
function compIndex(schema, root, baseId) {
 | 
					 | 
				
			||||||
  /* jshint validthis: true */
 | 
					 | 
				
			||||||
  for (var i=0; i<this._compilations.length; i++) {
 | 
					 | 
				
			||||||
    var c = this._compilations[i];
 | 
					 | 
				
			||||||
    if (c.schema == schema && c.root == root && c.baseId == baseId) return i;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
  return -1;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function patternCode(i, patterns) {
 | 
					 | 
				
			||||||
  return 'var pattern' + i + ' = new RegExp(' + util.toQuotedString(patterns[i]) + ');';
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function defaultCode(i) {
 | 
					 | 
				
			||||||
  return 'var default' + i + ' = defaults[' + i + '];';
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function refValCode(i, refVal) {
 | 
					 | 
				
			||||||
  return refVal[i] === undefined ? '' : 'var refVal' + i + ' = refVal[' + i + '];';
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function customRuleCode(i) {
 | 
					 | 
				
			||||||
  return 'var customRule' + i + ' = customRules[' + i + '];';
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function vars(arr, statement) {
 | 
					 | 
				
			||||||
  if (!arr.length) return '';
 | 
					 | 
				
			||||||
  var code = '';
 | 
					 | 
				
			||||||
  for (var i=0; i<arr.length; i++)
 | 
					 | 
				
			||||||
    code += statement(i, arr);
 | 
					 | 
				
			||||||
  return code;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										270
									
								
								node_modules/ajv/lib/compile/resolve.js
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										270
									
								
								node_modules/ajv/lib/compile/resolve.js
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,270 +0,0 @@
 | 
				
			|||||||
'use strict';
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
var URI = require('uri-js')
 | 
					 | 
				
			||||||
  , equal = require('fast-deep-equal')
 | 
					 | 
				
			||||||
  , util = require('./util')
 | 
					 | 
				
			||||||
  , SchemaObject = require('./schema_obj')
 | 
					 | 
				
			||||||
  , traverse = require('json-schema-traverse');
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
module.exports = resolve;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
resolve.normalizeId = normalizeId;
 | 
					 | 
				
			||||||
resolve.fullPath = getFullPath;
 | 
					 | 
				
			||||||
resolve.url = resolveUrl;
 | 
					 | 
				
			||||||
resolve.ids = resolveIds;
 | 
					 | 
				
			||||||
resolve.inlineRef = inlineRef;
 | 
					 | 
				
			||||||
resolve.schema = resolveSchema;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/**
 | 
					 | 
				
			||||||
 * [resolve and compile the references ($ref)]
 | 
					 | 
				
			||||||
 * @this   Ajv
 | 
					 | 
				
			||||||
 * @param  {Function} compile reference to schema compilation funciton (localCompile)
 | 
					 | 
				
			||||||
 * @param  {Object} root object with information about the root schema for the current schema
 | 
					 | 
				
			||||||
 * @param  {String} ref reference to resolve
 | 
					 | 
				
			||||||
 * @return {Object|Function} schema object (if the schema can be inlined) or validation function
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
function resolve(compile, root, ref) {
 | 
					 | 
				
			||||||
  /* jshint validthis: true */
 | 
					 | 
				
			||||||
  var refVal = this._refs[ref];
 | 
					 | 
				
			||||||
  if (typeof refVal == 'string') {
 | 
					 | 
				
			||||||
    if (this._refs[refVal]) refVal = this._refs[refVal];
 | 
					 | 
				
			||||||
    else return resolve.call(this, compile, root, refVal);
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  refVal = refVal || this._schemas[ref];
 | 
					 | 
				
			||||||
  if (refVal instanceof SchemaObject) {
 | 
					 | 
				
			||||||
    return inlineRef(refVal.schema, this._opts.inlineRefs)
 | 
					 | 
				
			||||||
            ? refVal.schema
 | 
					 | 
				
			||||||
            : refVal.validate || this._compile(refVal);
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  var res = resolveSchema.call(this, root, ref);
 | 
					 | 
				
			||||||
  var schema, v, baseId;
 | 
					 | 
				
			||||||
  if (res) {
 | 
					 | 
				
			||||||
    schema = res.schema;
 | 
					 | 
				
			||||||
    root = res.root;
 | 
					 | 
				
			||||||
    baseId = res.baseId;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  if (schema instanceof SchemaObject) {
 | 
					 | 
				
			||||||
    v = schema.validate || compile.call(this, schema.schema, root, undefined, baseId);
 | 
					 | 
				
			||||||
  } else if (schema !== undefined) {
 | 
					 | 
				
			||||||
    v = inlineRef(schema, this._opts.inlineRefs)
 | 
					 | 
				
			||||||
        ? schema
 | 
					 | 
				
			||||||
        : compile.call(this, schema, root, undefined, baseId);
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  return v;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/**
 | 
					 | 
				
			||||||
 * Resolve schema, its root and baseId
 | 
					 | 
				
			||||||
 * @this Ajv
 | 
					 | 
				
			||||||
 * @param  {Object} root root object with properties schema, refVal, refs
 | 
					 | 
				
			||||||
 * @param  {String} ref  reference to resolve
 | 
					 | 
				
			||||||
 * @return {Object} object with properties schema, root, baseId
 | 
					 | 
				
			||||||
 */
 | 
					 | 
				
			||||||
function resolveSchema(root, ref) {
 | 
					 | 
				
			||||||
  /* jshint validthis: true */
 | 
					 | 
				
			||||||
  var p = URI.parse(ref)
 | 
					 | 
				
			||||||
    , refPath = _getFullPath(p)
 | 
					 | 
				
			||||||
    , baseId = getFullPath(this._getId(root.schema));
 | 
					 | 
				
			||||||
  if (Object.keys(root.schema).length === 0 || refPath !== baseId) {
 | 
					 | 
				
			||||||
    var id = normalizeId(refPath);
 | 
					 | 
				
			||||||
    var refVal = this._refs[id];
 | 
					 | 
				
			||||||
    if (typeof refVal == 'string') {
 | 
					 | 
				
			||||||
      return resolveRecursive.call(this, root, refVal, p);
 | 
					 | 
				
			||||||
    } else if (refVal instanceof SchemaObject) {
 | 
					 | 
				
			||||||
      if (!refVal.validate) this._compile(refVal);
 | 
					 | 
				
			||||||
      root = refVal;
 | 
					 | 
				
			||||||
    } else {
 | 
					 | 
				
			||||||
      refVal = this._schemas[id];
 | 
					 | 
				
			||||||
      if (refVal instanceof SchemaObject) {
 | 
					 | 
				
			||||||
        if (!refVal.validate) this._compile(refVal);
 | 
					 | 
				
			||||||
        if (id == normalizeId(ref))
 | 
					 | 
				
			||||||
          return { schema: refVal, root: root, baseId: baseId };
 | 
					 | 
				
			||||||
        root = refVal;
 | 
					 | 
				
			||||||
      } else {
 | 
					 | 
				
			||||||
        return;
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    if (!root.schema) return;
 | 
					 | 
				
			||||||
    baseId = getFullPath(this._getId(root.schema));
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
  return getJsonPointer.call(this, p, baseId, root.schema, root);
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/* @this Ajv */
 | 
					 | 
				
			||||||
function resolveRecursive(root, ref, parsedRef) {
 | 
					 | 
				
			||||||
  /* jshint validthis: true */
 | 
					 | 
				
			||||||
  var res = resolveSchema.call(this, root, ref);
 | 
					 | 
				
			||||||
  if (res) {
 | 
					 | 
				
			||||||
    var schema = res.schema;
 | 
					 | 
				
			||||||
    var baseId = res.baseId;
 | 
					 | 
				
			||||||
    root = res.root;
 | 
					 | 
				
			||||||
    var id = this._getId(schema);
 | 
					 | 
				
			||||||
    if (id) baseId = resolveUrl(baseId, id);
 | 
					 | 
				
			||||||
    return getJsonPointer.call(this, parsedRef, baseId, schema, root);
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
var PREVENT_SCOPE_CHANGE = util.toHash(['properties', 'patternProperties', 'enum', 'dependencies', 'definitions']);
 | 
					 | 
				
			||||||
/* @this Ajv */
 | 
					 | 
				
			||||||
function getJsonPointer(parsedRef, baseId, schema, root) {
 | 
					 | 
				
			||||||
  /* jshint validthis: true */
 | 
					 | 
				
			||||||
  parsedRef.fragment = parsedRef.fragment || '';
 | 
					 | 
				
			||||||
  if (parsedRef.fragment.slice(0,1) != '/') return;
 | 
					 | 
				
			||||||
  var parts = parsedRef.fragment.split('/');
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  for (var i = 1; i < parts.length; i++) {
 | 
					 | 
				
			||||||
    var part = parts[i];
 | 
					 | 
				
			||||||
    if (part) {
 | 
					 | 
				
			||||||
      part = util.unescapeFragment(part);
 | 
					 | 
				
			||||||
      schema = schema[part];
 | 
					 | 
				
			||||||
      if (schema === undefined) break;
 | 
					 | 
				
			||||||
      var id;
 | 
					 | 
				
			||||||
      if (!PREVENT_SCOPE_CHANGE[part]) {
 | 
					 | 
				
			||||||
        id = this._getId(schema);
 | 
					 | 
				
			||||||
        if (id) baseId = resolveUrl(baseId, id);
 | 
					 | 
				
			||||||
        if (schema.$ref) {
 | 
					 | 
				
			||||||
          var $ref = resolveUrl(baseId, schema.$ref);
 | 
					 | 
				
			||||||
          var res = resolveSchema.call(this, root, $ref);
 | 
					 | 
				
			||||||
          if (res) {
 | 
					 | 
				
			||||||
            schema = res.schema;
 | 
					 | 
				
			||||||
            root = res.root;
 | 
					 | 
				
			||||||
            baseId = res.baseId;
 | 
					 | 
				
			||||||
          }
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
  if (schema !== undefined && schema !== root.schema)
 | 
					 | 
				
			||||||
    return { schema: schema, root: root, baseId: baseId };
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
var SIMPLE_INLINED = util.toHash([
 | 
					 | 
				
			||||||
  'type', 'format', 'pattern',
 | 
					 | 
				
			||||||
  'maxLength', 'minLength',
 | 
					 | 
				
			||||||
  'maxProperties', 'minProperties',
 | 
					 | 
				
			||||||
  'maxItems', 'minItems',
 | 
					 | 
				
			||||||
  'maximum', 'minimum',
 | 
					 | 
				
			||||||
  'uniqueItems', 'multipleOf',
 | 
					 | 
				
			||||||
  'required', 'enum'
 | 
					 | 
				
			||||||
]);
 | 
					 | 
				
			||||||
function inlineRef(schema, limit) {
 | 
					 | 
				
			||||||
  if (limit === false) return false;
 | 
					 | 
				
			||||||
  if (limit === undefined || limit === true) return checkNoRef(schema);
 | 
					 | 
				
			||||||
  else if (limit) return countKeys(schema) <= limit;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function checkNoRef(schema) {
 | 
					 | 
				
			||||||
  var item;
 | 
					 | 
				
			||||||
  if (Array.isArray(schema)) {
 | 
					 | 
				
			||||||
    for (var i=0; i<schema.length; i++) {
 | 
					 | 
				
			||||||
      item = schema[i];
 | 
					 | 
				
			||||||
      if (typeof item == 'object' && !checkNoRef(item)) return false;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
  } else {
 | 
					 | 
				
			||||||
    for (var key in schema) {
 | 
					 | 
				
			||||||
      if (key == '$ref') return false;
 | 
					 | 
				
			||||||
      item = schema[key];
 | 
					 | 
				
			||||||
      if (typeof item == 'object' && !checkNoRef(item)) return false;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
  return true;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function countKeys(schema) {
 | 
					 | 
				
			||||||
  var count = 0, item;
 | 
					 | 
				
			||||||
  if (Array.isArray(schema)) {
 | 
					 | 
				
			||||||
    for (var i=0; i<schema.length; i++) {
 | 
					 | 
				
			||||||
      item = schema[i];
 | 
					 | 
				
			||||||
      if (typeof item == 'object') count += countKeys(item);
 | 
					 | 
				
			||||||
      if (count == Infinity) return Infinity;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
  } else {
 | 
					 | 
				
			||||||
    for (var key in schema) {
 | 
					 | 
				
			||||||
      if (key == '$ref') return Infinity;
 | 
					 | 
				
			||||||
      if (SIMPLE_INLINED[key]) {
 | 
					 | 
				
			||||||
        count++;
 | 
					 | 
				
			||||||
      } else {
 | 
					 | 
				
			||||||
        item = schema[key];
 | 
					 | 
				
			||||||
        if (typeof item == 'object') count += countKeys(item) + 1;
 | 
					 | 
				
			||||||
        if (count == Infinity) return Infinity;
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
  return count;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function getFullPath(id, normalize) {
 | 
					 | 
				
			||||||
  if (normalize !== false) id = normalizeId(id);
 | 
					 | 
				
			||||||
  var p = URI.parse(id);
 | 
					 | 
				
			||||||
  return _getFullPath(p);
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function _getFullPath(p) {
 | 
					 | 
				
			||||||
  return URI.serialize(p).split('#')[0] + '#';
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
var TRAILING_SLASH_HASH = /#\/?$/;
 | 
					 | 
				
			||||||
function normalizeId(id) {
 | 
					 | 
				
			||||||
  return id ? id.replace(TRAILING_SLASH_HASH, '') : '';
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function resolveUrl(baseId, id) {
 | 
					 | 
				
			||||||
  id = normalizeId(id);
 | 
					 | 
				
			||||||
  return URI.resolve(baseId, id);
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
/* @this Ajv */
 | 
					 | 
				
			||||||
function resolveIds(schema) {
 | 
					 | 
				
			||||||
  var schemaId = normalizeId(this._getId(schema));
 | 
					 | 
				
			||||||
  var baseIds = {'': schemaId};
 | 
					 | 
				
			||||||
  var fullPaths = {'': getFullPath(schemaId, false)};
 | 
					 | 
				
			||||||
  var localRefs = {};
 | 
					 | 
				
			||||||
  var self = this;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  traverse(schema, {allKeys: true}, function(sch, jsonPtr, rootSchema, parentJsonPtr, parentKeyword, parentSchema, keyIndex) {
 | 
					 | 
				
			||||||
    if (jsonPtr === '') return;
 | 
					 | 
				
			||||||
    var id = self._getId(sch);
 | 
					 | 
				
			||||||
    var baseId = baseIds[parentJsonPtr];
 | 
					 | 
				
			||||||
    var fullPath = fullPaths[parentJsonPtr] + '/' + parentKeyword;
 | 
					 | 
				
			||||||
    if (keyIndex !== undefined)
 | 
					 | 
				
			||||||
      fullPath += '/' + (typeof keyIndex == 'number' ? keyIndex : util.escapeFragment(keyIndex));
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    if (typeof id == 'string') {
 | 
					 | 
				
			||||||
      id = baseId = normalizeId(baseId ? URI.resolve(baseId, id) : id);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      var refVal = self._refs[id];
 | 
					 | 
				
			||||||
      if (typeof refVal == 'string') refVal = self._refs[refVal];
 | 
					 | 
				
			||||||
      if (refVal && refVal.schema) {
 | 
					 | 
				
			||||||
        if (!equal(sch, refVal.schema))
 | 
					 | 
				
			||||||
          throw new Error('id "' + id + '" resolves to more than one schema');
 | 
					 | 
				
			||||||
      } else if (id != normalizeId(fullPath)) {
 | 
					 | 
				
			||||||
        if (id[0] == '#') {
 | 
					 | 
				
			||||||
          if (localRefs[id] && !equal(sch, localRefs[id]))
 | 
					 | 
				
			||||||
            throw new Error('id "' + id + '" resolves to more than one schema');
 | 
					 | 
				
			||||||
          localRefs[id] = sch;
 | 
					 | 
				
			||||||
        } else {
 | 
					 | 
				
			||||||
          self._refs[id] = fullPath;
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    baseIds[jsonPtr] = baseId;
 | 
					 | 
				
			||||||
    fullPaths[jsonPtr] = fullPath;
 | 
					 | 
				
			||||||
  });
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  return localRefs;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										66
									
								
								node_modules/ajv/lib/compile/rules.js
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										66
									
								
								node_modules/ajv/lib/compile/rules.js
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,66 +0,0 @@
 | 
				
			|||||||
'use strict';
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
var ruleModules = require('../dotjs')
 | 
					 | 
				
			||||||
  , toHash = require('./util').toHash;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
module.exports = function rules() {
 | 
					 | 
				
			||||||
  var RULES = [
 | 
					 | 
				
			||||||
    { type: 'number',
 | 
					 | 
				
			||||||
      rules: [ { 'maximum': ['exclusiveMaximum'] },
 | 
					 | 
				
			||||||
               { 'minimum': ['exclusiveMinimum'] }, 'multipleOf', 'format'] },
 | 
					 | 
				
			||||||
    { type: 'string',
 | 
					 | 
				
			||||||
      rules: [ 'maxLength', 'minLength', 'pattern', 'format' ] },
 | 
					 | 
				
			||||||
    { type: 'array',
 | 
					 | 
				
			||||||
      rules: [ 'maxItems', 'minItems', 'items', 'contains', 'uniqueItems' ] },
 | 
					 | 
				
			||||||
    { type: 'object',
 | 
					 | 
				
			||||||
      rules: [ 'maxProperties', 'minProperties', 'required', 'dependencies', 'propertyNames',
 | 
					 | 
				
			||||||
               { 'properties': ['additionalProperties', 'patternProperties'] } ] },
 | 
					 | 
				
			||||||
    { rules: [ '$ref', 'const', 'enum', 'not', 'anyOf', 'oneOf', 'allOf', 'if' ] }
 | 
					 | 
				
			||||||
  ];
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  var ALL = [ 'type', '$comment' ];
 | 
					 | 
				
			||||||
  var KEYWORDS = [
 | 
					 | 
				
			||||||
    '$schema', '$id', 'id', '$data', '$async', 'title',
 | 
					 | 
				
			||||||
    'description', 'default', 'definitions',
 | 
					 | 
				
			||||||
    'examples', 'readOnly', 'writeOnly',
 | 
					 | 
				
			||||||
    'contentMediaType', 'contentEncoding',
 | 
					 | 
				
			||||||
    'additionalItems', 'then', 'else'
 | 
					 | 
				
			||||||
  ];
 | 
					 | 
				
			||||||
  var TYPES = [ 'number', 'integer', 'string', 'array', 'object', 'boolean', 'null' ];
 | 
					 | 
				
			||||||
  RULES.all = toHash(ALL);
 | 
					 | 
				
			||||||
  RULES.types = toHash(TYPES);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  RULES.forEach(function (group) {
 | 
					 | 
				
			||||||
    group.rules = group.rules.map(function (keyword) {
 | 
					 | 
				
			||||||
      var implKeywords;
 | 
					 | 
				
			||||||
      if (typeof keyword == 'object') {
 | 
					 | 
				
			||||||
        var key = Object.keys(keyword)[0];
 | 
					 | 
				
			||||||
        implKeywords = keyword[key];
 | 
					 | 
				
			||||||
        keyword = key;
 | 
					 | 
				
			||||||
        implKeywords.forEach(function (k) {
 | 
					 | 
				
			||||||
          ALL.push(k);
 | 
					 | 
				
			||||||
          RULES.all[k] = true;
 | 
					 | 
				
			||||||
        });
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
      ALL.push(keyword);
 | 
					 | 
				
			||||||
      var rule = RULES.all[keyword] = {
 | 
					 | 
				
			||||||
        keyword: keyword,
 | 
					 | 
				
			||||||
        code: ruleModules[keyword],
 | 
					 | 
				
			||||||
        implements: implKeywords
 | 
					 | 
				
			||||||
      };
 | 
					 | 
				
			||||||
      return rule;
 | 
					 | 
				
			||||||
    });
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    RULES.all.$comment = {
 | 
					 | 
				
			||||||
      keyword: '$comment',
 | 
					 | 
				
			||||||
      code: ruleModules.$comment
 | 
					 | 
				
			||||||
    };
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    if (group.type) RULES.types[group.type] = group;
 | 
					 | 
				
			||||||
  });
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  RULES.keywords = toHash(ALL.concat(KEYWORDS));
 | 
					 | 
				
			||||||
  RULES.custom = {};
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  return RULES;
 | 
					 | 
				
			||||||
};
 | 
					 | 
				
			||||||
							
								
								
									
										9
									
								
								node_modules/ajv/lib/compile/schema_obj.js
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										9
									
								
								node_modules/ajv/lib/compile/schema_obj.js
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,9 +0,0 @@
 | 
				
			|||||||
'use strict';
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
var util = require('./util');
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
module.exports = SchemaObject;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function SchemaObject(obj) {
 | 
					 | 
				
			||||||
  util.copy(obj, this);
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										20
									
								
								node_modules/ajv/lib/compile/ucs2length.js
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										20
									
								
								node_modules/ajv/lib/compile/ucs2length.js
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,20 +0,0 @@
 | 
				
			|||||||
'use strict';
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
// https://mathiasbynens.be/notes/javascript-encoding
 | 
					 | 
				
			||||||
// https://github.com/bestiejs/punycode.js - punycode.ucs2.decode
 | 
					 | 
				
			||||||
module.exports = function ucs2length(str) {
 | 
					 | 
				
			||||||
  var length = 0
 | 
					 | 
				
			||||||
    , len = str.length
 | 
					 | 
				
			||||||
    , pos = 0
 | 
					 | 
				
			||||||
    , value;
 | 
					 | 
				
			||||||
  while (pos < len) {
 | 
					 | 
				
			||||||
    length++;
 | 
					 | 
				
			||||||
    value = str.charCodeAt(pos++);
 | 
					 | 
				
			||||||
    if (value >= 0xD800 && value <= 0xDBFF && pos < len) {
 | 
					 | 
				
			||||||
      // high surrogate, and there is a next character
 | 
					 | 
				
			||||||
      value = str.charCodeAt(pos);
 | 
					 | 
				
			||||||
      if ((value & 0xFC00) == 0xDC00) pos++; // low surrogate
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
  return length;
 | 
					 | 
				
			||||||
};
 | 
					 | 
				
			||||||
							
								
								
									
										274
									
								
								node_modules/ajv/lib/compile/util.js
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										274
									
								
								node_modules/ajv/lib/compile/util.js
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,274 +0,0 @@
 | 
				
			|||||||
'use strict';
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
module.exports = {
 | 
					 | 
				
			||||||
  copy: copy,
 | 
					 | 
				
			||||||
  checkDataType: checkDataType,
 | 
					 | 
				
			||||||
  checkDataTypes: checkDataTypes,
 | 
					 | 
				
			||||||
  coerceToTypes: coerceToTypes,
 | 
					 | 
				
			||||||
  toHash: toHash,
 | 
					 | 
				
			||||||
  getProperty: getProperty,
 | 
					 | 
				
			||||||
  escapeQuotes: escapeQuotes,
 | 
					 | 
				
			||||||
  equal: require('fast-deep-equal'),
 | 
					 | 
				
			||||||
  ucs2length: require('./ucs2length'),
 | 
					 | 
				
			||||||
  varOccurences: varOccurences,
 | 
					 | 
				
			||||||
  varReplace: varReplace,
 | 
					 | 
				
			||||||
  cleanUpCode: cleanUpCode,
 | 
					 | 
				
			||||||
  finalCleanUpCode: finalCleanUpCode,
 | 
					 | 
				
			||||||
  schemaHasRules: schemaHasRules,
 | 
					 | 
				
			||||||
  schemaHasRulesExcept: schemaHasRulesExcept,
 | 
					 | 
				
			||||||
  schemaUnknownRules: schemaUnknownRules,
 | 
					 | 
				
			||||||
  toQuotedString: toQuotedString,
 | 
					 | 
				
			||||||
  getPathExpr: getPathExpr,
 | 
					 | 
				
			||||||
  getPath: getPath,
 | 
					 | 
				
			||||||
  getData: getData,
 | 
					 | 
				
			||||||
  unescapeFragment: unescapeFragment,
 | 
					 | 
				
			||||||
  unescapeJsonPointer: unescapeJsonPointer,
 | 
					 | 
				
			||||||
  escapeFragment: escapeFragment,
 | 
					 | 
				
			||||||
  escapeJsonPointer: escapeJsonPointer
 | 
					 | 
				
			||||||
};
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function copy(o, to) {
 | 
					 | 
				
			||||||
  to = to || {};
 | 
					 | 
				
			||||||
  for (var key in o) to[key] = o[key];
 | 
					 | 
				
			||||||
  return to;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function checkDataType(dataType, data, negate) {
 | 
					 | 
				
			||||||
  var EQUAL = negate ? ' !== ' : ' === '
 | 
					 | 
				
			||||||
    , AND = negate ? ' || ' : ' && '
 | 
					 | 
				
			||||||
    , OK = negate ? '!' : ''
 | 
					 | 
				
			||||||
    , NOT = negate ? '' : '!';
 | 
					 | 
				
			||||||
  switch (dataType) {
 | 
					 | 
				
			||||||
    case 'null': return data + EQUAL + 'null';
 | 
					 | 
				
			||||||
    case 'array': return OK + 'Array.isArray(' + data + ')';
 | 
					 | 
				
			||||||
    case 'object': return '(' + OK + data + AND +
 | 
					 | 
				
			||||||
                          'typeof ' + data + EQUAL + '"object"' + AND +
 | 
					 | 
				
			||||||
                          NOT + 'Array.isArray(' + data + '))';
 | 
					 | 
				
			||||||
    case 'integer': return '(typeof ' + data + EQUAL + '"number"' + AND +
 | 
					 | 
				
			||||||
                           NOT + '(' + data + ' % 1)' +
 | 
					 | 
				
			||||||
                           AND + data + EQUAL + data + ')';
 | 
					 | 
				
			||||||
    default: return 'typeof ' + data + EQUAL + '"' + dataType + '"';
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function checkDataTypes(dataTypes, data) {
 | 
					 | 
				
			||||||
  switch (dataTypes.length) {
 | 
					 | 
				
			||||||
    case 1: return checkDataType(dataTypes[0], data, true);
 | 
					 | 
				
			||||||
    default:
 | 
					 | 
				
			||||||
      var code = '';
 | 
					 | 
				
			||||||
      var types = toHash(dataTypes);
 | 
					 | 
				
			||||||
      if (types.array && types.object) {
 | 
					 | 
				
			||||||
        code = types.null ? '(': '(!' + data + ' || ';
 | 
					 | 
				
			||||||
        code += 'typeof ' + data + ' !== "object")';
 | 
					 | 
				
			||||||
        delete types.null;
 | 
					 | 
				
			||||||
        delete types.array;
 | 
					 | 
				
			||||||
        delete types.object;
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
      if (types.number) delete types.integer;
 | 
					 | 
				
			||||||
      for (var t in types)
 | 
					 | 
				
			||||||
        code += (code ? ' && ' : '' ) + checkDataType(t, data, true);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      return code;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
var COERCE_TO_TYPES = toHash([ 'string', 'number', 'integer', 'boolean', 'null' ]);
 | 
					 | 
				
			||||||
function coerceToTypes(optionCoerceTypes, dataTypes) {
 | 
					 | 
				
			||||||
  if (Array.isArray(dataTypes)) {
 | 
					 | 
				
			||||||
    var types = [];
 | 
					 | 
				
			||||||
    for (var i=0; i<dataTypes.length; i++) {
 | 
					 | 
				
			||||||
      var t = dataTypes[i];
 | 
					 | 
				
			||||||
      if (COERCE_TO_TYPES[t]) types[types.length] = t;
 | 
					 | 
				
			||||||
      else if (optionCoerceTypes === 'array' && t === 'array') types[types.length] = t;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
    if (types.length) return types;
 | 
					 | 
				
			||||||
  } else if (COERCE_TO_TYPES[dataTypes]) {
 | 
					 | 
				
			||||||
    return [dataTypes];
 | 
					 | 
				
			||||||
  } else if (optionCoerceTypes === 'array' && dataTypes === 'array') {
 | 
					 | 
				
			||||||
    return ['array'];
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function toHash(arr) {
 | 
					 | 
				
			||||||
  var hash = {};
 | 
					 | 
				
			||||||
  for (var i=0; i<arr.length; i++) hash[arr[i]] = true;
 | 
					 | 
				
			||||||
  return hash;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
var IDENTIFIER = /^[a-z$_][a-z$_0-9]*$/i;
 | 
					 | 
				
			||||||
var SINGLE_QUOTE = /'|\\/g;
 | 
					 | 
				
			||||||
function getProperty(key) {
 | 
					 | 
				
			||||||
  return typeof key == 'number'
 | 
					 | 
				
			||||||
          ? '[' + key + ']'
 | 
					 | 
				
			||||||
          : IDENTIFIER.test(key)
 | 
					 | 
				
			||||||
            ? '.' + key
 | 
					 | 
				
			||||||
            : "['" + escapeQuotes(key) + "']";
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function escapeQuotes(str) {
 | 
					 | 
				
			||||||
  return str.replace(SINGLE_QUOTE, '\\$&')
 | 
					 | 
				
			||||||
            .replace(/\n/g, '\\n')
 | 
					 | 
				
			||||||
            .replace(/\r/g, '\\r')
 | 
					 | 
				
			||||||
            .replace(/\f/g, '\\f')
 | 
					 | 
				
			||||||
            .replace(/\t/g, '\\t');
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function varOccurences(str, dataVar) {
 | 
					 | 
				
			||||||
  dataVar += '[^0-9]';
 | 
					 | 
				
			||||||
  var matches = str.match(new RegExp(dataVar, 'g'));
 | 
					 | 
				
			||||||
  return matches ? matches.length : 0;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function varReplace(str, dataVar, expr) {
 | 
					 | 
				
			||||||
  dataVar += '([^0-9])';
 | 
					 | 
				
			||||||
  expr = expr.replace(/\$/g, '$$$$');
 | 
					 | 
				
			||||||
  return str.replace(new RegExp(dataVar, 'g'), expr + '$1');
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
var EMPTY_ELSE = /else\s*{\s*}/g
 | 
					 | 
				
			||||||
  , EMPTY_IF_NO_ELSE = /if\s*\([^)]+\)\s*\{\s*\}(?!\s*else)/g
 | 
					 | 
				
			||||||
  , EMPTY_IF_WITH_ELSE = /if\s*\(([^)]+)\)\s*\{\s*\}\s*else(?!\s*if)/g;
 | 
					 | 
				
			||||||
function cleanUpCode(out) {
 | 
					 | 
				
			||||||
  return out.replace(EMPTY_ELSE, '')
 | 
					 | 
				
			||||||
            .replace(EMPTY_IF_NO_ELSE, '')
 | 
					 | 
				
			||||||
            .replace(EMPTY_IF_WITH_ELSE, 'if (!($1))');
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
var ERRORS_REGEXP = /[^v.]errors/g
 | 
					 | 
				
			||||||
  , REMOVE_ERRORS = /var errors = 0;|var vErrors = null;|validate.errors = vErrors;/g
 | 
					 | 
				
			||||||
  , REMOVE_ERRORS_ASYNC = /var errors = 0;|var vErrors = null;/g
 | 
					 | 
				
			||||||
  , RETURN_VALID = 'return errors === 0;'
 | 
					 | 
				
			||||||
  , RETURN_TRUE = 'validate.errors = null; return true;'
 | 
					 | 
				
			||||||
  , RETURN_ASYNC = /if \(errors === 0\) return data;\s*else throw new ValidationError\(vErrors\);/
 | 
					 | 
				
			||||||
  , RETURN_DATA_ASYNC = 'return data;'
 | 
					 | 
				
			||||||
  , ROOTDATA_REGEXP = /[^A-Za-z_$]rootData[^A-Za-z0-9_$]/g
 | 
					 | 
				
			||||||
  , REMOVE_ROOTDATA = /if \(rootData === undefined\) rootData = data;/;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function finalCleanUpCode(out, async) {
 | 
					 | 
				
			||||||
  var matches = out.match(ERRORS_REGEXP);
 | 
					 | 
				
			||||||
  if (matches && matches.length == 2) {
 | 
					 | 
				
			||||||
    out = async
 | 
					 | 
				
			||||||
          ? out.replace(REMOVE_ERRORS_ASYNC, '')
 | 
					 | 
				
			||||||
               .replace(RETURN_ASYNC, RETURN_DATA_ASYNC)
 | 
					 | 
				
			||||||
          : out.replace(REMOVE_ERRORS, '')
 | 
					 | 
				
			||||||
               .replace(RETURN_VALID, RETURN_TRUE);
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  matches = out.match(ROOTDATA_REGEXP);
 | 
					 | 
				
			||||||
  if (!matches || matches.length !== 3) return out;
 | 
					 | 
				
			||||||
  return out.replace(REMOVE_ROOTDATA, '');
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function schemaHasRules(schema, rules) {
 | 
					 | 
				
			||||||
  if (typeof schema == 'boolean') return !schema;
 | 
					 | 
				
			||||||
  for (var key in schema) if (rules[key]) return true;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function schemaHasRulesExcept(schema, rules, exceptKeyword) {
 | 
					 | 
				
			||||||
  if (typeof schema == 'boolean') return !schema && exceptKeyword != 'not';
 | 
					 | 
				
			||||||
  for (var key in schema) if (key != exceptKeyword && rules[key]) return true;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function schemaUnknownRules(schema, rules) {
 | 
					 | 
				
			||||||
  if (typeof schema == 'boolean') return;
 | 
					 | 
				
			||||||
  for (var key in schema) if (!rules[key]) return key;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function toQuotedString(str) {
 | 
					 | 
				
			||||||
  return '\'' + escapeQuotes(str) + '\'';
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function getPathExpr(currentPath, expr, jsonPointers, isNumber) {
 | 
					 | 
				
			||||||
  var path = jsonPointers // false by default
 | 
					 | 
				
			||||||
              ? '\'/\' + ' + expr + (isNumber ? '' : '.replace(/~/g, \'~0\').replace(/\\//g, \'~1\')')
 | 
					 | 
				
			||||||
              : (isNumber ? '\'[\' + ' + expr + ' + \']\'' : '\'[\\\'\' + ' + expr + ' + \'\\\']\'');
 | 
					 | 
				
			||||||
  return joinPaths(currentPath, path);
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function getPath(currentPath, prop, jsonPointers) {
 | 
					 | 
				
			||||||
  var path = jsonPointers // false by default
 | 
					 | 
				
			||||||
              ? toQuotedString('/' + escapeJsonPointer(prop))
 | 
					 | 
				
			||||||
              : toQuotedString(getProperty(prop));
 | 
					 | 
				
			||||||
  return joinPaths(currentPath, path);
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
var JSON_POINTER = /^\/(?:[^~]|~0|~1)*$/;
 | 
					 | 
				
			||||||
var RELATIVE_JSON_POINTER = /^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;
 | 
					 | 
				
			||||||
function getData($data, lvl, paths) {
 | 
					 | 
				
			||||||
  var up, jsonPointer, data, matches;
 | 
					 | 
				
			||||||
  if ($data === '') return 'rootData';
 | 
					 | 
				
			||||||
  if ($data[0] == '/') {
 | 
					 | 
				
			||||||
    if (!JSON_POINTER.test($data)) throw new Error('Invalid JSON-pointer: ' + $data);
 | 
					 | 
				
			||||||
    jsonPointer = $data;
 | 
					 | 
				
			||||||
    data = 'rootData';
 | 
					 | 
				
			||||||
  } else {
 | 
					 | 
				
			||||||
    matches = $data.match(RELATIVE_JSON_POINTER);
 | 
					 | 
				
			||||||
    if (!matches) throw new Error('Invalid JSON-pointer: ' + $data);
 | 
					 | 
				
			||||||
    up = +matches[1];
 | 
					 | 
				
			||||||
    jsonPointer = matches[2];
 | 
					 | 
				
			||||||
    if (jsonPointer == '#') {
 | 
					 | 
				
			||||||
      if (up >= lvl) throw new Error('Cannot access property/index ' + up + ' levels up, current level is ' + lvl);
 | 
					 | 
				
			||||||
      return paths[lvl - up];
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    if (up > lvl) throw new Error('Cannot access data ' + up + ' levels up, current level is ' + lvl);
 | 
					 | 
				
			||||||
    data = 'data' + ((lvl - up) || '');
 | 
					 | 
				
			||||||
    if (!jsonPointer) return data;
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  var expr = data;
 | 
					 | 
				
			||||||
  var segments = jsonPointer.split('/');
 | 
					 | 
				
			||||||
  for (var i=0; i<segments.length; i++) {
 | 
					 | 
				
			||||||
    var segment = segments[i];
 | 
					 | 
				
			||||||
    if (segment) {
 | 
					 | 
				
			||||||
      data += getProperty(unescapeJsonPointer(segment));
 | 
					 | 
				
			||||||
      expr += ' && ' + data;
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
  return expr;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function joinPaths (a, b) {
 | 
					 | 
				
			||||||
  if (a == '""') return b;
 | 
					 | 
				
			||||||
  return (a + ' + ' + b).replace(/' \+ '/g, '');
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function unescapeFragment(str) {
 | 
					 | 
				
			||||||
  return unescapeJsonPointer(decodeURIComponent(str));
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function escapeFragment(str) {
 | 
					 | 
				
			||||||
  return encodeURIComponent(escapeJsonPointer(str));
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function escapeJsonPointer(str) {
 | 
					 | 
				
			||||||
  return str.replace(/~/g, '~0').replace(/\//g, '~1');
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
function unescapeJsonPointer(str) {
 | 
					 | 
				
			||||||
  return str.replace(/~1/g, '/').replace(/~0/g, '~');
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
							
								
								
									
										49
									
								
								node_modules/ajv/lib/data.js
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										49
									
								
								node_modules/ajv/lib/data.js
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,49 +0,0 @@
 | 
				
			|||||||
'use strict';
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
var KEYWORDS = [
 | 
					 | 
				
			||||||
  'multipleOf',
 | 
					 | 
				
			||||||
  'maximum',
 | 
					 | 
				
			||||||
  'exclusiveMaximum',
 | 
					 | 
				
			||||||
  'minimum',
 | 
					 | 
				
			||||||
  'exclusiveMinimum',
 | 
					 | 
				
			||||||
  'maxLength',
 | 
					 | 
				
			||||||
  'minLength',
 | 
					 | 
				
			||||||
  'pattern',
 | 
					 | 
				
			||||||
  'additionalItems',
 | 
					 | 
				
			||||||
  'maxItems',
 | 
					 | 
				
			||||||
  'minItems',
 | 
					 | 
				
			||||||
  'uniqueItems',
 | 
					 | 
				
			||||||
  'maxProperties',
 | 
					 | 
				
			||||||
  'minProperties',
 | 
					 | 
				
			||||||
  'required',
 | 
					 | 
				
			||||||
  'additionalProperties',
 | 
					 | 
				
			||||||
  'enum',
 | 
					 | 
				
			||||||
  'format',
 | 
					 | 
				
			||||||
  'const'
 | 
					 | 
				
			||||||
];
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
module.exports = function (metaSchema, keywordsJsonPointers) {
 | 
					 | 
				
			||||||
  for (var i=0; i<keywordsJsonPointers.length; i++) {
 | 
					 | 
				
			||||||
    metaSchema = JSON.parse(JSON.stringify(metaSchema));
 | 
					 | 
				
			||||||
    var segments = keywordsJsonPointers[i].split('/');
 | 
					 | 
				
			||||||
    var keywords = metaSchema;
 | 
					 | 
				
			||||||
    var j;
 | 
					 | 
				
			||||||
    for (j=1; j<segments.length; j++)
 | 
					 | 
				
			||||||
      keywords = keywords[segments[j]];
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    for (j=0; j<KEYWORDS.length; j++) {
 | 
					 | 
				
			||||||
      var key = KEYWORDS[j];
 | 
					 | 
				
			||||||
      var schema = keywords[key];
 | 
					 | 
				
			||||||
      if (schema) {
 | 
					 | 
				
			||||||
        keywords[key] = {
 | 
					 | 
				
			||||||
          anyOf: [
 | 
					 | 
				
			||||||
            schema,
 | 
					 | 
				
			||||||
            { $ref: 'https://raw.githubusercontent.com/epoberezkin/ajv/master/lib/refs/data.json#' }
 | 
					 | 
				
			||||||
          ]
 | 
					 | 
				
			||||||
        };
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  return metaSchema;
 | 
					 | 
				
			||||||
};
 | 
					 | 
				
			||||||
							
								
								
									
										104
									
								
								node_modules/ajv/lib/dot/_limit.jst
									
									
									
										generated
									
									
										vendored
									
									
								
							
							
						
						
									
										104
									
								
								node_modules/ajv/lib/dot/_limit.jst
									
									
									
										generated
									
									
										vendored
									
									
								
							@@ -1,104 +0,0 @@
 | 
				
			|||||||
{{# def.definitions }}
 | 
					 | 
				
			||||||
{{# def.errors }}
 | 
					 | 
				
			||||||
{{# def.setupKeyword }}
 | 
					 | 
				
			||||||
{{# def.$data }}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
{{## def.setExclusiveLimit:
 | 
					 | 
				
			||||||
  $exclusive = true;
 | 
					 | 
				
			||||||
  $errorKeyword = $exclusiveKeyword;
 | 
					 | 
				
			||||||
  $errSchemaPath = it.errSchemaPath + '/' + $exclusiveKeyword;
 | 
					 | 
				
			||||||
#}}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
{{
 | 
					 | 
				
			||||||
  var $isMax = $keyword == 'maximum'
 | 
					 | 
				
			||||||
    , $exclusiveKeyword = $isMax ? 'exclusiveMaximum' : 'exclusiveMinimum'
 | 
					 | 
				
			||||||
    , $schemaExcl = it.schema[$exclusiveKeyword]
 | 
					 | 
				
			||||||
    , $isDataExcl = it.opts.$data && $schemaExcl && $schemaExcl.$data
 | 
					 | 
				
			||||||
    , $op = $isMax ? '<' : '>'
 | 
					 | 
				
			||||||
    , $notOp = $isMax ? '>' : '<'
 | 
					 | 
				
			||||||
    , $errorKeyword = undefined;
 | 
					 | 
				
			||||||
}}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
{{? $isDataExcl }}
 | 
					 | 
				
			||||||
  {{
 | 
					 | 
				
			||||||
    var $schemaValueExcl = it.util.getData($schemaExcl.$data, $dataLvl, it.dataPathArr)
 | 
					 | 
				
			||||||
      , $exclusive = 'exclusive' + $lvl
 | 
					 | 
				
			||||||
      , $exclType = 'exclType' + $lvl
 | 
					 | 
				
			||||||
      , $exclIsNumber = 'exclIsNumber' + $lvl
 | 
					 | 
				
			||||||
      , $opExpr = 'op' + $lvl
 | 
					 | 
				
			||||||
      , $opStr = '\' + ' + $opExpr + ' + \'';
 | 
					 | 
				
			||||||
  }}
 | 
					 | 
				
			||||||
  var schemaExcl{{=$lvl}} = {{=$schemaValueExcl}};
 | 
					 | 
				
			||||||
  {{ $schemaValueExcl = 'schemaExcl' + $lvl; }}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  var {{=$exclusive}};
 | 
					 | 
				
			||||||
  var {{=$exclType}} = typeof {{=$schemaValueExcl}};
 | 
					 | 
				
			||||||
  if ({{=$exclType}} != 'boolean' && {{=$exclType}} != 'undefined' && {{=$exclType}} != 'number') {
 | 
					 | 
				
			||||||
    {{ var $errorKeyword = $exclusiveKeyword; }}
 | 
					 | 
				
			||||||
    {{# def.error:'_exclusiveLimit' }}
 | 
					 | 
				
			||||||
  } else if ({{# def.$dataNotType:'number' }}
 | 
					 | 
				
			||||||
            {{=$exclType}} == 'number'
 | 
					 | 
				
			||||||
              ? (
 | 
					 | 
				
			||||||
                  ({{=$exclusive}} = {{=$schemaValue}} === undefined || {{=$schemaValueExcl}} {{=$op}}= {{=$schemaValue}})
 | 
					 | 
				
			||||||
                    ? {{=$data}} {{=$notOp}}= {{=$schemaValueExcl}}
 | 
					 | 
				
			||||||
                    : {{=$data}} {{=$notOp}} {{=$schemaValue}}
 | 
					 | 
				
			||||||
                )
 | 
					 | 
				
			||||||
              : (
 | 
					 | 
				
			||||||
                  ({{=$exclusive}} = {{=$schemaValueExcl}} === true)
 | 
					 | 
				
			||||||
                    ? {{=$data}} {{=$notOp}}= {{=$schemaValue}}
 | 
					 | 
				
			||||||
                    : {{=$data}} {{=$notOp}} {{=$schemaValue}}
 | 
					 | 
				
			||||||
                )
 | 
					 | 
				
			||||||
            || {{=$data}} !== {{=$data}}) {
 | 
					 | 
				
			||||||
    var op{{=$lvl}} = {{=$exclusive}} ? '{{=$op}}' : '{{=$op}}=';
 | 
					 | 
				
			||||||
    {{
 | 
					 | 
				
			||||||
      if ($schema === undefined) {
 | 
					 | 
				
			||||||
        $errorKeyword = $exclusiveKeyword;
 | 
					 | 
				
			||||||
        $errSchemaPath = it.errSchemaPath + '/' + $exclusiveKeyword;
 | 
					 | 
				
			||||||
        $schemaValue = $schemaValueExcl;
 | 
					 | 
				
			||||||
        $isData = $isDataExcl;
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    }}
 | 
					 | 
				
			||||||
{{??}}
 | 
					 | 
				
			||||||
  {{
 | 
					 | 
				
			||||||
    var $exclIsNumber = typeof $schemaExcl == 'number'
 | 
					 | 
				
			||||||
      , $opStr = $op;  /*used in error*/
 | 
					 | 
				
			||||||
  }}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  {{? $exclIsNumber && $isData }}
 | 
					 | 
				
			||||||
    {{ var $opExpr = '\'' + $opStr + '\''; /*used in error*/ }}
 | 
					 | 
				
			||||||
    if ({{# def.$dataNotType:'number' }}
 | 
					 | 
				
			||||||
        ( {{=$schemaValue}} === undefined
 | 
					 | 
				
			||||||
          || {{=$schemaExcl}} {{=$op}}= {{=$schemaValue}}
 | 
					 | 
				
			||||||
            ? {{=$data}} {{=$notOp}}= {{=$schemaExcl}}
 | 
					 | 
				
			||||||
            : {{=$data}} {{=$notOp}} {{=$schemaValue}} )
 | 
					 | 
				
			||||||
        || {{=$data}} !== {{=$data}}) {
 | 
					 | 
				
			||||||
  {{??}}
 | 
					 | 
				
			||||||
    {{
 | 
					 | 
				
			||||||
      if ($exclIsNumber && $schema === undefined) {
 | 
					 | 
				
			||||||
          {{# def.setExclusiveLimit }}
 | 
					 | 
				
			||||||
          $schemaValue = $schemaExcl;
 | 
					 | 
				
			||||||
          $notOp += '=';
 | 
					 | 
				
			||||||
      } else {
 | 
					 | 
				
			||||||
        if ($exclIsNumber)
 | 
					 | 
				
			||||||
          $schemaValue = Math[$isMax ? 'min' : 'max']($schemaExcl, $schema);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        if ($schemaExcl === ($exclIsNumber ? $schemaValue : true)) {
 | 
					 | 
				
			||||||
          {{# def.setExclusiveLimit }}
 | 
					 | 
				
			||||||
          $notOp += '=';
 | 
					 | 
				
			||||||
        } else {
 | 
					 | 
				
			||||||
          $exclusive = false;
 | 
					 | 
				
			||||||
          $opStr += '=';
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      var $opExpr = '\'' + $opStr + '\''; /*used in error*/
 | 
					 | 
				
			||||||
    }}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    if ({{# def.$dataNotType:'number' }}
 | 
					 | 
				
			||||||
        {{=$data}} {{=$notOp}} {{=$schemaValue}}
 | 
					 | 
				
			||||||
        || {{=$data}} !== {{=$data}}) {
 | 
					 | 
				
			||||||
  {{?}}
 | 
					 | 
				
			||||||
{{?}}
 | 
					 | 
				
			||||||
    {{ $errorKeyword = $errorKeyword || $keyword; }}
 | 
					 | 
				
			||||||
    {{# def.error:'_limit' }}
 | 
					 | 
				
			||||||
  } {{? $breakOnError }} else { {{?}}
 | 
					 | 
				
			||||||
Some files were not shown because too many files have changed in this diff Show More
		Reference in New Issue
	
	Block a user