mirror of
https://github.com/opelly27/streetmerchant.git
synced 2026-05-20 07:37:39 +00:00
chore: add typescript definitions for custom types (#486)
This commit is contained in:
+1
-1
@@ -158,7 +158,7 @@ const notifications = {
|
|||||||
playSound: envOrString(process.env.PLAY_SOUND),
|
playSound: envOrString(process.env.PLAY_SOUND),
|
||||||
pushbullet: envOrString(process.env.PUSHBULLET),
|
pushbullet: envOrString(process.env.PUSHBULLET),
|
||||||
pushover: {
|
pushover: {
|
||||||
priority: envOrString(process.env.PUSHOVER_PRIORITY),
|
priority: envOrNumber(process.env.PUSHOVER_PRIORITY),
|
||||||
token: envOrString(process.env.PUSHOVER_TOKEN),
|
token: envOrString(process.env.PUSHOVER_TOKEN),
|
||||||
username: envOrString(process.env.PUSHOVER_USER)
|
username: envOrString(process.env.PUSHOVER_USER)
|
||||||
},
|
},
|
||||||
|
|||||||
+1
-1
@@ -11,7 +11,7 @@ import {tryLookupAndLoop} from './store';
|
|||||||
puppeteer.use(stealthPlugin());
|
puppeteer.use(stealthPlugin());
|
||||||
if (config.browser.lowBandwidth) {
|
if (config.browser.lowBandwidth) {
|
||||||
puppeteer.use(resourceBlock({
|
puppeteer.use(resourceBlock({
|
||||||
blockedTypes: new Set(['image', 'font'])
|
blockedTypes: new Set(['image', 'font'] as const)
|
||||||
}));
|
}));
|
||||||
} else {
|
} else {
|
||||||
puppeteer.use(adBlocker);
|
puppeteer.use(adBlocker);
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
import {Link, Store} from '../store/model';
|
import {Link, Store} from '../store/model';
|
||||||
import {Print, logger} from '../logger';
|
import {Print, logger} from '../logger';
|
||||||
import Push from 'pushover-notifications';
|
import Push, {PushoverMessage} from 'pushover-notifications';
|
||||||
import {config} from '../config';
|
import {config} from '../config';
|
||||||
|
|
||||||
const pushover = config.notifications.pushover;
|
const pushover = config.notifications.pushover;
|
||||||
@@ -13,7 +13,7 @@ export function sendPushoverNotification(link: Link, store: Store) {
|
|||||||
if (pushover.token && pushover.username) {
|
if (pushover.token && pushover.username) {
|
||||||
logger.debug('↗ sending pushover message');
|
logger.debug('↗ sending pushover message');
|
||||||
|
|
||||||
const message = {
|
const message: PushoverMessage = {
|
||||||
message: link.cartUrl ? link.cartUrl : link.url,
|
message: link.cartUrl ? link.cartUrl : link.url,
|
||||||
priority: pushover.priority,
|
priority: pushover.priority,
|
||||||
title: Print.inStock(link, store)
|
title: Print.inStock(link, store)
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
|
import playerLib, {PlaySound} from 'play-sound';
|
||||||
import {config} from '../config';
|
import {config} from '../config';
|
||||||
import fs from 'fs';
|
import fs from 'fs';
|
||||||
import {logger} from '../logger';
|
import {logger} from '../logger';
|
||||||
import playerLib from 'play-sound';
|
|
||||||
|
|
||||||
let player: any;
|
let player: PlaySound;
|
||||||
|
|
||||||
if (config.notifications.playSound) {
|
if (config.notifications.playSound) {
|
||||||
player = playerLib();
|
player = playerLib();
|
||||||
@@ -11,7 +11,7 @@ if (config.notifications.playSound) {
|
|||||||
if (player.player === null) {
|
if (player.player === null) {
|
||||||
logger.warn('✖ couldn\'t find sound player');
|
logger.warn('✖ couldn\'t find sound player');
|
||||||
} else {
|
} else {
|
||||||
const playerName: string = player.player;
|
const playerName = player.player;
|
||||||
logger.info(`✔ sound player found: ${playerName}`);
|
logger.info(`✔ sound player found: ${playerName}`);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Vendored
+22
-1
@@ -1 +1,22 @@
|
|||||||
declare module 'play-sound';
|
declare module 'play-sound' {
|
||||||
|
export interface Options {
|
||||||
|
players?: string[];
|
||||||
|
player?: string;
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface PlayOptions {
|
||||||
|
[key: string]: any;
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface PlaySound {
|
||||||
|
player: string;
|
||||||
|
|
||||||
|
play: ((file: string, callback: (error: Error) => void) => PlayerProcess) & ((file: string, options: PlayOptions, callback: (error: Error) => void) => PlayerProcess);
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface PlayerProcess {
|
||||||
|
kill: () => void;
|
||||||
|
}
|
||||||
|
|
||||||
|
export default function (options?: Options): PlaySound;
|
||||||
|
}
|
||||||
|
|||||||
+25
-1
@@ -1 +1,25 @@
|
|||||||
declare module 'puppeteer-extra-plugin-block-resources';
|
declare module 'puppeteer-extra-plugin-block-resources' {
|
||||||
|
import {PuppeteerExtraPlugin} from 'puppeteer-extra';
|
||||||
|
|
||||||
|
export type ResourceType =
|
||||||
|
'document' |
|
||||||
|
'eventsource' |
|
||||||
|
'fetch' |
|
||||||
|
'font' |
|
||||||
|
'image' |
|
||||||
|
'manifest' |
|
||||||
|
'media' |
|
||||||
|
'other' |
|
||||||
|
'script' |
|
||||||
|
'stylesheet' |
|
||||||
|
'texttrack' |
|
||||||
|
'websocket' |
|
||||||
|
'xhr';
|
||||||
|
|
||||||
|
export interface Options {
|
||||||
|
availableTypes?: Set<ResourceType>;
|
||||||
|
blockedTypes?: Set<ResourceType>;
|
||||||
|
}
|
||||||
|
|
||||||
|
export default function (options?: Options): PuppeteerExtraPlugin;
|
||||||
|
}
|
||||||
|
|||||||
Vendored
+59
-1
@@ -1 +1,59 @@
|
|||||||
declare module '@hijef/pushbullet';
|
declare module '@hijef/pushbullet' {
|
||||||
|
export type DeviceParams = string | number | Record<string, any>;
|
||||||
|
|
||||||
|
export type PushBulletCallback = ((error: Error) => void) | ((error?: null, response: any) => void);
|
||||||
|
|
||||||
|
export interface ListOptions {
|
||||||
|
active?: boolean;
|
||||||
|
cursor?: string;
|
||||||
|
limit?: number;
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface HistoryOptions extends ListOptions {
|
||||||
|
modified_after?: number;
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface PushBulletStream {
|
||||||
|
connect: () => void;
|
||||||
|
close: () => void;
|
||||||
|
on: ((event: 'connect' | 'close' | 'nop', callback: () => void) => void) & ((event: 'error', callback: (error: any) => void) => void) & ((event: 'message', callback: (message: any) => void) => void) & ((event: 'tickle', callback: (tickle: any) => void) => void) & ((event: 'push', callback: (push: any) => void) => void);
|
||||||
|
}
|
||||||
|
|
||||||
|
export class PushBullet {
|
||||||
|
constructor(apiKey: string, options?: {fullResponses: boolean}): this;
|
||||||
|
me(callback: PushBulletCallback);
|
||||||
|
devices(options: ListOptions, callback: PushBulletCallback);
|
||||||
|
devices(callback: PushBulletCallback);
|
||||||
|
createDevice(options: Record<string, any>, callback: PushBulletCallback);
|
||||||
|
updateDevice(deviceIden: string, deviceOptions: Record<string, any>, callback: PushBulletCallback);
|
||||||
|
deleteDevice(deviceIden: string, callback: PushBulletCallback);
|
||||||
|
note(deviceParams: DeviceParams, title: string, body: string, callback: PushBulletCallback);
|
||||||
|
link(deviceParams: DeviceParams, name: string, url: string, body: string, callback: PushBulletCallback);
|
||||||
|
file(deviceParams: DeviceParams, filePath: string, message: string, callback: PushBulletCallback);
|
||||||
|
dismissPush(pushIden: DeviceParams, callback: PushBulletCallback);
|
||||||
|
deletePush(pushIden: DeviceParams, callback: PushBulletCallback);
|
||||||
|
deleteAllPushes(callback: PushBulletCallback);
|
||||||
|
history(options: HistoryOptions, callback: PushBulletCallback);
|
||||||
|
history(callback: PushBulletCallback);
|
||||||
|
subscriptions(options: ListOptions, callback: PushBulletCallback);
|
||||||
|
subscriptions(callback: PushBulletCallback);
|
||||||
|
subscribe(channelTag: string, callback: PushBulletCallback);
|
||||||
|
unsubscribe(subscriptionIden: string, callback: PushBulletCallback);
|
||||||
|
muteSubscription(subscriptionIden: string, callback: PushBulletCallback);
|
||||||
|
unmuteSubscription(subscriptionIden: string, callback: PushBulletCallback);
|
||||||
|
channelInfo(channelTag: string, callback: PushBulletCallback);
|
||||||
|
chats(options: ListOptions, callback: PushBulletCallback);
|
||||||
|
chats(callback: PushBulletCallback);
|
||||||
|
createChat(email: string, callback: PushBulletCallback);
|
||||||
|
deleteChat(chatIden: string, callback: PushBulletCallback);
|
||||||
|
muteChat(chatIden: string, callback: PushBulletCallback);
|
||||||
|
unmuteChat(chatIden: string, callback: PushBulletCallback);
|
||||||
|
sendSMS(options: Record<string, any>, callback: PushBulletCallback);
|
||||||
|
sendClipboard(options: Record<string, any>, callback: PushBulletCallback);
|
||||||
|
dismissEphemeral(options: Record<string, any>, callback: PushBulletCallback);
|
||||||
|
stream(): PushBulletStream;
|
||||||
|
enableEncryption(encryptionPassword: string, userIden: string): PushBulletStream;
|
||||||
|
}
|
||||||
|
|
||||||
|
export default PushBullet;
|
||||||
|
}
|
||||||
|
|||||||
+55
-1
@@ -1 +1,55 @@
|
|||||||
declare module 'pushover-notifications';
|
declare module 'pushover-notifications' {
|
||||||
|
export type PushoverCallback = ((error: Error) => void) | ((error?: null, response: any) => void);
|
||||||
|
|
||||||
|
export type Sound =
|
||||||
|
'pushover' |
|
||||||
|
'bike' |
|
||||||
|
'bugle' |
|
||||||
|
'cashregister' |
|
||||||
|
'classical' |
|
||||||
|
'cosmic' |
|
||||||
|
'falling' |
|
||||||
|
'gamelan' |
|
||||||
|
'incoming' |
|
||||||
|
'intermission' |
|
||||||
|
'magic' |
|
||||||
|
'mechanical' |
|
||||||
|
'pianobar' |
|
||||||
|
'siren' |
|
||||||
|
'spacealarm' |
|
||||||
|
'tugboat' |
|
||||||
|
'alien' |
|
||||||
|
'climb' |
|
||||||
|
'persistent' |
|
||||||
|
'echo' |
|
||||||
|
'updown' |
|
||||||
|
'vibrate' |
|
||||||
|
'none';
|
||||||
|
|
||||||
|
export interface PushoverOptions {
|
||||||
|
token: string;
|
||||||
|
user: string;
|
||||||
|
httpOptions?: {proxy: string};
|
||||||
|
onerror?: (error: Error | string) => void;
|
||||||
|
update_sounds?: boolean;
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface PushoverMessage {
|
||||||
|
message: string;
|
||||||
|
file?: string | {name: string; data: string};
|
||||||
|
device?: string;
|
||||||
|
title?: string;
|
||||||
|
url?: string;
|
||||||
|
url_title?: string;
|
||||||
|
priority?: number;
|
||||||
|
sound?: Sound;
|
||||||
|
timestamp?: number;
|
||||||
|
}
|
||||||
|
|
||||||
|
export class Pushover {
|
||||||
|
constructor(options: PushoverOptions);
|
||||||
|
send(message: PushoverMessage, callback: PushoverCallback);
|
||||||
|
}
|
||||||
|
|
||||||
|
export default Pushover;
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user