Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 3 additions & 20 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,7 @@
"@types/express": "4.17.21",
"@types/js-yaml": "4.0.5",
"@types/mocha": "^9.1.1",
"@types/node": "^24.0.0",
"@types/node": "^24.12.2",
"@types/pg": "^8.6.5",
"@types/ramda": "^0.28.13",
"@types/sinon": "^10.0.11",
Expand Down
3 changes: 1 addition & 2 deletions src/@types/adapters.ts
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@ export interface IWebServerAdapter extends EventEmitter {
close(callback?: () => void): void
}


export type IWebSocketAdapter = EventEmitter & {
getClientId(): string
getClientAddress(): string
Expand All @@ -21,7 +20,7 @@ export type IWebSocketAdapter = EventEmitter & {
export interface ICacheAdapter {
getKey(key: string): Promise<string>
hasKey(key: string): Promise<boolean>
setKey(key: string, value: string): Promise<boolean>
setKey(key: string, value: string, expirySeconds?: number): Promise<boolean>
addToSortedSet(key: string, set: Record<string, string> | Record<string, string>[]): Promise<number>
removeRangeByScoreFromSortedSet(key: string, min: number, max: number): Promise<number>
getRangeFromSortedSet(key: string, start: number, stop: number): Promise<string[]>
Expand Down
14 changes: 4 additions & 10 deletions src/@types/base.ts
Original file line number Diff line number Diff line change
Expand Up @@ -16,21 +16,15 @@ type ExtraTagValues = {
}

export interface TagBase extends ExtraTagValues {
0: TagName;
0: TagName
1: string
}

type Enumerate<
N extends number,
Acc extends number[] = [],
> = Acc['length'] extends N
type Enumerate<N extends number, Acc extends number[] = []> = Acc['length'] extends N
? Acc[number]
: Enumerate<N, [...Acc, Acc['length']]>

export type Range<F extends number, T extends number> = Exclude<
Enumerate<T>,
Enumerate<F>
>
export type Range<F extends number, T extends number> = Exclude<Enumerate<T>, Enumerate<F>>

export type Factory<TOutput = any, TInput = void> = (input: TInput) => TOutput

Expand All @@ -45,4 +39,4 @@ export interface ContextMetadata {
export interface IRunnable {
run(): void
close(callback?: (...args: any[]) => void): void
}
}
7 changes: 1 addition & 6 deletions src/@types/cache.ts
Original file line number Diff line number Diff line change
@@ -1,8 +1,3 @@
import {
RedisClientType,
RedisFunctions,
RedisModules,
RedisScripts,
} from 'redis'
import { RedisClientType, RedisFunctions, RedisModules, RedisScripts } from 'redis'

export type CacheClient = RedisClientType<RedisModules, RedisFunctions, RedisScripts>
2 changes: 1 addition & 1 deletion src/@types/database.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import { DatabaseTransaction } from './base'

export interface ITransaction {
begin(): Promise<void>
get transaction (): DatabaseTransaction
get transaction(): DatabaseTransaction
commit(): Promise<any[]>
rollback(): Promise<any[]>
}
7 changes: 6 additions & 1 deletion src/@types/event.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
import { ContextMetadata, EventId, Pubkey, Tag } from './base'
import { ContextMetadataKey, EventDeduplicationMetadataKey, EventExpirationTimeMetadataKey, EventKinds } from '../constants/base'
import {
ContextMetadataKey,
EventDeduplicationMetadataKey,
EventExpirationTimeMetadataKey,
EventKinds,
} from '../constants/base'

export interface BaseEvent {
id: EventId
Expand Down
4 changes: 2 additions & 2 deletions src/@types/invoice.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import { Pubkey } from './base'
export enum InvoiceUnit {
MSATS = 'msats',
SATS = 'sats',
BTC = 'btc'
BTC = 'btc',
}

export enum InvoiceStatus {
Expand Down Expand Up @@ -39,7 +39,7 @@ export interface DBInvoice {
amount_requested: bigint
amount_paid: bigint
unit: InvoiceUnit
status: InvoiceStatus,
status: InvoiceStatus
description: string
confirmed_at: Date
expires_at: Date
Expand Down
19 changes: 5 additions & 14 deletions src/@types/messages.ts
Original file line number Diff line number Diff line change
Expand Up @@ -9,23 +9,14 @@ export enum MessageType {
CLOSE = 'CLOSE',
NOTICE = 'NOTICE',
EOSE = 'EOSE',
OK = 'OK'
OK = 'OK',
}

export type IncomingMessage = (
| SubscribeMessage
| IncomingEventMessage
| UnsubscribeMessage
) & {
[ContextMetadataKey]?: ContextMetadata
}

export type IncomingMessage = (SubscribeMessage | IncomingEventMessage | UnsubscribeMessage) & {
[ContextMetadataKey]?: ContextMetadata
}

export type OutgoingMessage =
| OutgoingEventMessage
| EndOfStoredEventsNotice
| NoticeMessage
| CommandResult
export type OutgoingMessage = OutgoingEventMessage | EndOfStoredEventsNotice | NoticeMessage | CommandResult

export type SubscribeMessage = {
[index in Range<2, 100>]: SubscriptionFilter
Expand Down
24 changes: 4 additions & 20 deletions src/@types/repositories.ts
Original file line number Diff line number Diff line change
Expand Up @@ -42,21 +42,9 @@ export interface IEventRepository {
export interface IInvoiceRepository {
findById(id: string, client?: DatabaseClient): Promise<Invoice | undefined>
upsert(invoice: Partial<Invoice>, client?: DatabaseClient): Promise<number>
updateStatus(
invoice: Pick<Invoice, 'id' | 'status'>,
client?: DatabaseClient,
): Promise<Invoice | undefined>
confirmInvoice(
invoiceId: string,
amountReceived: bigint,
confirmedAt: Date,
client?: DatabaseClient,
): Promise<void>
findPendingInvoices(
offset?: number,
limit?: number,
client?: DatabaseClient,
): Promise<Invoice[]>
updateStatus(invoice: Pick<Invoice, 'id' | 'status'>, client?: DatabaseClient): Promise<Invoice | undefined>
confirmInvoice(invoiceId: string, amountReceived: bigint, confirmedAt: Date, client?: DatabaseClient): Promise<void>
findPendingInvoices(offset?: number, limit?: number, client?: DatabaseClient): Promise<Invoice[]>
}

export interface IUserRepository {
Expand All @@ -71,10 +59,6 @@ export interface IUserRepository {
export interface INip05VerificationRepository {
findByPubkey(pubkey: Pubkey): Promise<Nip05Verification | undefined>
upsert(verification: Nip05Verification): Promise<number>
findPendingVerifications(
updateFrequencyMs: number,
maxFailures: number,
limit: number,
): Promise<Nip05Verification[]>
findPendingVerifications(updateFrequencyMs: number, maxFailures: number, limit: number): Promise<Nip05Verification[]>
deleteByPubkey(pubkey: Pubkey): Promise<number>
}
10 changes: 2 additions & 8 deletions src/@types/services.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,16 +7,10 @@ export interface IMaintenanceService {

export interface IPaymentsService {
getInvoiceFromPaymentsProcessor(invoice: string | Invoice): Promise<Partial<Invoice>>
createInvoice(
pubkey: Pubkey,
amount: bigint,
description: string,
): Promise<Invoice>
createInvoice(pubkey: Pubkey, amount: bigint, description: string): Promise<Invoice>
updateInvoice(invoice: Partial<Invoice>): Promise<void>
updateInvoiceStatus(invoice: Pick<Invoice, 'id' | 'status'>): Promise<Invoice>
confirmInvoice(
invoice: Pick<Invoice, 'id' | 'amountPaid' | 'confirmedAt' | 'status' | 'pubkey'>,
): Promise<void>
confirmInvoice(invoice: Pick<Invoice, 'id' | 'amountPaid' | 'confirmedAt' | 'status' | 'pubkey'>): Promise<void>
sendInvoiceUpdateNotification(invoice: Invoice): Promise<void>
getPendingInvoices(): Promise<Invoice[]>
}
2 changes: 1 addition & 1 deletion src/@types/settings.ts
Original file line number Diff line number Diff line change
Expand Up @@ -199,7 +199,7 @@ export interface NodelessPaymentsProcessor {
}

export interface PaymentsProcessors {
lnurl?: LnurlPaymentsProcessor,
lnurl?: LnurlPaymentsProcessor
zebedee?: ZebedeePaymentsProcessor
lnbits?: LNbitsPaymentsProcessor
nodeless?: NodelessPaymentsProcessor
Expand Down
4 changes: 2 additions & 2 deletions src/@types/utils.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
export interface IRateLimiterOptions {
period: number;
rate: number;
period: number
rate: number
}

export interface IRateLimiter {
Expand Down
Loading
Loading