mirror of
https://github.com/zhigang1992/DefinitelyTyped.git
synced 2026-04-23 12:56:46 +08:00
Add node-notifier
This commit is contained in:
167
node-notifier/node-notifier.d.ts
vendored
Normal file
167
node-notifier/node-notifier.d.ts
vendored
Normal file
@@ -0,0 +1,167 @@
|
||||
// Type definitions for node-notifier
|
||||
// Project: https://github.com/mikaelbr/node-notifier
|
||||
// Definitions by: Qubo <https://github.com/tkQubo>
|
||||
// Definitions: https://github.com/borisyankov/DefinitelyTyped
|
||||
|
||||
/// <reference path="../bluebird/bluebird.d.ts" />
|
||||
/// <reference path="../node/node.d.ts" />
|
||||
|
||||
declare module "node-notifier" {
|
||||
import NotificationCenter = require('node-notifier/notifiers/notificationcenter');
|
||||
import NotifySend = require("node-notifier/notifiers/notifysend");
|
||||
import WindowsToaster = require("node-notifier/notifiers/toaster");
|
||||
import WindowsBalloon = require("node-notifier/notifiers/balloon");
|
||||
import Growl = require("node-notifier/notifiers/growl");
|
||||
|
||||
namespace nodeNotifier {
|
||||
interface NodeNotifier extends NodeJS.EventEmitter {
|
||||
notify(notification?: Notification, callback?: NotificationCallback): NodeNotifier;
|
||||
NotificationCenter: NotificationCenter;
|
||||
NotifySend: NotifySend;
|
||||
WindowsToaster: WindowsToaster;
|
||||
WindowsBalloon: WindowsBalloon;
|
||||
Growl: Growl;
|
||||
}
|
||||
|
||||
interface Notification {
|
||||
title?: string;
|
||||
message?: string;
|
||||
/** Absolute path (not balloons) */
|
||||
icon?: string;
|
||||
/** Only Notification Center or Windows Toasters */
|
||||
sound?: boolean;
|
||||
/** Wait with callback until user action is taken on notification */
|
||||
wait?: boolean;
|
||||
}
|
||||
|
||||
interface NotificationCallback {
|
||||
(err: any, response: any): any;
|
||||
}
|
||||
|
||||
interface Option {
|
||||
withFallback?: boolean;
|
||||
customPath?: string;
|
||||
}
|
||||
}
|
||||
|
||||
var nodeNotifier: nodeNotifier.NodeNotifier;
|
||||
|
||||
export = nodeNotifier;
|
||||
}
|
||||
|
||||
declare module "node-notifier/notifiers/notificationcenter" {
|
||||
import notifier = require('node-notifier');
|
||||
|
||||
class NotificationCenter {
|
||||
constructor(option?: notifier.Option);
|
||||
notify(notification?: NotificationCenter.Notification, callback?: notifier.NotificationCallback): NotificationCenter;
|
||||
}
|
||||
|
||||
namespace NotificationCenter {
|
||||
interface Notification extends notifier.Notification {
|
||||
subtitle?: string;
|
||||
/** Attach image? (Absolute path) */
|
||||
contentImage?: string;
|
||||
/** URL to open on click */
|
||||
open?: string;
|
||||
}
|
||||
}
|
||||
|
||||
export = NotificationCenter;
|
||||
}
|
||||
|
||||
declare module "node-notifier/notifiers/notifysend" {
|
||||
import notifier = require('node-notifier');
|
||||
|
||||
class NotifySend {
|
||||
constructor(option?: notifier.Option);
|
||||
notify(notification?: NotifySend.Notification, callback?: notifier.NotificationCallback): NotifySend;
|
||||
}
|
||||
|
||||
namespace NotifySend {
|
||||
interface Notification {
|
||||
title?: string;
|
||||
message?: string;
|
||||
icon?: string;
|
||||
/** Specifies the urgency level (low, normal, critical). */
|
||||
urgency?: string;
|
||||
/** Specifies the timeout in milliseconds at which to expire the notification */
|
||||
time?: number;
|
||||
/** Specifies the notification category */
|
||||
category?: string;
|
||||
/** Specifies basic extra data to pass. Valid types are int, double, string and byte. */
|
||||
hint?: string;
|
||||
}
|
||||
}
|
||||
|
||||
export = NotifySend;
|
||||
}
|
||||
|
||||
declare module "node-notifier/notifiers/toaster" {
|
||||
import notifier = require('node-notifier');
|
||||
|
||||
class WindowsToaster {
|
||||
constructor(option?: notifier.Option);
|
||||
notify(notification?: notifier.Notification, callback?: notifier.NotificationCallback): WindowsToaster;
|
||||
}
|
||||
|
||||
export = WindowsToaster;
|
||||
}
|
||||
|
||||
declare module "node-notifier/notifiers/growl" {
|
||||
import notifier = require('node-notifier');
|
||||
|
||||
class Growl {
|
||||
constructor(option?: Growl.Option);
|
||||
notify(notification?: Growl.Notification, callback?: notifier.NotificationCallback): Growl;
|
||||
}
|
||||
|
||||
namespace Growl {
|
||||
interface Option {
|
||||
name?: string;
|
||||
host?: string;
|
||||
port?: number;
|
||||
}
|
||||
|
||||
interface Notification {
|
||||
title?: string;
|
||||
message?: string;
|
||||
/** Absolute path (not balloons) */
|
||||
icon?: string;
|
||||
/** Wait with callback until user action is taken on notification */
|
||||
wait?: boolean;
|
||||
/** whether or not to sticky the notification (defaults to false) */
|
||||
sticky?: boolean;
|
||||
/** type of notification to use (defaults to the first registered type) */
|
||||
label: string;
|
||||
/** the priority of the notification from lowest (-2) to highest (2) */
|
||||
priority: number;
|
||||
}
|
||||
}
|
||||
|
||||
export = Growl;
|
||||
}
|
||||
|
||||
declare module "node-notifier/notifiers/balloon" {
|
||||
import notifier = require('node-notifier');
|
||||
|
||||
class WindowsBalloon {
|
||||
constructor(option?: notifier.Option);
|
||||
notify(notification?: WindowsBalloon.Notification, callback?: notifier.NotificationCallback): WindowsBalloon;
|
||||
}
|
||||
|
||||
namespace WindowsBalloon {
|
||||
interface Notification {
|
||||
title?: string;
|
||||
message?: string;
|
||||
/** Only Notification Center or Windows Toasters */
|
||||
sound?: boolean;
|
||||
/** How long to show balloons in ms */
|
||||
time?: number;
|
||||
/** Wait with callback until user action is taken on notification */
|
||||
wait?: boolean;
|
||||
}
|
||||
}
|
||||
|
||||
export = WindowsBalloon;
|
||||
}
|
||||
Reference in New Issue
Block a user