namespace _heimdall.notification_kinds.console
{
	
	/**
	 */
	function parameters_schema(
	) : _heimdall.helpers.json_schema.type_schema
	{
		return {
			"type": "object",
			"additionalProperties": false,
			"properties": {
			},
			"required": [
			]
		};
	}
	
	
	/**
	 */
	function normalize_order_node(
		node : any
	) : any
	{
		return Object.assign(
			{
			},
			node
		);
	}
	
	
	/**
	 */
	function notify(
		parameters : any,
		name : string,
		check : type_check,
		state : type_item_state,
		info : any
	) : Promise<void>
	{
		process.stdout.write(
			lib_plankton.string.coin(
				"[{{title}}] <{{condition}}> {{info}}\n",
				{
					"title": check.name,
					"condition": _heimdall.condition_show(state.condition),
					"info": lib_plankton.json.encode(info, true),
				}
			)
		);
		return Promise.resolve<void>(undefined);
	}
	
	
	/**
	 */
	register_implementation(
		"console",
		{
			"parameters_schema": parameters_schema,
			"normalize_order_node": normalize_order_node,
			"notify": notify,
		}
	);
	
}
