b85e67541b
- string.ts: rejsonGet, rejsonSet, rejsonDel using JSON.GET/SET/DEL - IPC + preload for rejsonGet/rejsonSet - New ReJsonEditor.vue: Monaco JSON editor with JSON.GET/SET - KeyDetail: dispatch ReJSON-RL/json/tair-json types to ReJsonEditor
137 lines
6.1 KiB
TypeScript
137 lines
6.1 KiB
TypeScript
// src/preload/index.d.ts
|
|
export interface ConnectionConfig {
|
|
id: string
|
|
name: string
|
|
host: string
|
|
port: number
|
|
auth: string
|
|
username: string
|
|
tls: boolean
|
|
tlsCaPath: string
|
|
tlsCertPath: string
|
|
tlsKeyPath: string
|
|
tlsRejectUnauthorized: boolean
|
|
sshEnabled: boolean
|
|
sshHost: string
|
|
sshPort: number
|
|
sshUsername: string
|
|
sshPassword: string
|
|
sshPrivateKeyPath: string
|
|
sshPassphrase: string
|
|
cluster: boolean
|
|
sentinelEnabled: boolean
|
|
sentinelHost: string
|
|
sentinelPort: number
|
|
sentinelMasterName: string
|
|
sentinelNodePassword: string
|
|
separator: string
|
|
order: number
|
|
createdAt: number
|
|
color?: string
|
|
}
|
|
|
|
export interface ElectronAPI {
|
|
window: {
|
|
minimize: () => void
|
|
maximize: () => void
|
|
close: () => void
|
|
}
|
|
theme: {
|
|
get: () => Promise<boolean>
|
|
set: (theme: 'system' | 'dark' | 'light') => void
|
|
onOsUpdated: (callback: (isDark: boolean) => void) => void
|
|
}
|
|
dialog: {
|
|
openFile: (options: { title?: string; filters?: { name: string; extensions: string[] }[] }) =>
|
|
Promise<{ path: string; content: string } | null>
|
|
}
|
|
credential: {
|
|
encrypt: (text: string) => Promise<string>
|
|
decrypt: (encoded: string) => Promise<string>
|
|
}
|
|
storage: {
|
|
getConnections: () => Promise<ConnectionConfig[]>
|
|
saveConnection: (conn: ConnectionConfig) => Promise<ConnectionConfig[]>
|
|
deleteConnection: (id: string) => Promise<ConnectionConfig[]>
|
|
reorderConnections: (ids: string[]) => Promise<ConnectionConfig[]>
|
|
getSettings: () => Promise<any>
|
|
saveSettings: (settings: any) => Promise<void>
|
|
}
|
|
redis: {
|
|
connect: (id: string, opts: any) => Promise<{ success: boolean; error?: string }>
|
|
disconnect: (id: string) => Promise<void>
|
|
execute: (id: string, command: string, args: string[]) => Promise<any>
|
|
getInfo: (id: string) => Promise<string>
|
|
scanKeys: (id: string, cursor: string, pattern: string, count: number) =>
|
|
Promise<{ cursor: string; keys: string[] }>
|
|
getKeyType: (id: string, key: string) => Promise<string>
|
|
getKeyTTL: (id: string, key: string) => Promise<number>
|
|
getString: (id: string, key: string) => Promise<string | null>
|
|
setString: (id: string, key: string, value: string) => Promise<void>
|
|
rejsonGet: (id: string, key: string, path: string) => Promise<string>
|
|
rejsonSet: (id: string, key: string, path: string, value: string) => Promise<void>
|
|
deleteKey: (id: string, key: string) => Promise<void>
|
|
hashScan: (id: string, key: string, cursor: string, count: number) =>
|
|
Promise<{ cursor: string; fields: [string, string][] }>
|
|
hashSet: (id: string, key: string, field: string, value: string) => Promise<void>
|
|
hashDel: (id: string, key: string, field: string) => Promise<void>
|
|
setTTL: (id: string, key: string, ttl: number) => Promise<void>
|
|
selectDb: (id: string, db: number) => Promise<void>
|
|
dbSize: (id: string) => Promise<number>
|
|
listRange: (id: string, key: string, start: number, stop: number) => Promise<string[]>
|
|
listLength: (id: string, key: string) => Promise<number>
|
|
listPush: (id: string, key: string, values: string[]) => Promise<number>
|
|
listSet: (id: string, key: string, index: number, value: string) => Promise<void>
|
|
listRemove: (id: string, key: string, count: number, value: string) => Promise<number>
|
|
setMembers: (id: string, key: string) => Promise<string[]>
|
|
setSize: (id: string, key: string) => Promise<number>
|
|
setAdd: (id: string, key: string, members: string[]) => Promise<number>
|
|
setRemove: (id: string, key: string, members: string[]) => Promise<number>
|
|
zsetRange: (id: string, key: string, start: number, stop: number, withScores: boolean) => Promise<string[]>
|
|
zsetSize: (id: string, key: string) => Promise<number>
|
|
zsetAdd: (id: string, key: string, score: number, member: string) => Promise<number>
|
|
zsetRemove: (id: string, key: string, members: string[]) => Promise<number>
|
|
slowLogGet: (id: string, count: number) => Promise<any[]>
|
|
slowLogLen: (id: string) => Promise<number>
|
|
memoryUsage: (id: string, key: string) => Promise<number | null>
|
|
batchDelete: (id: string, keys: string[]) => Promise<number>
|
|
streamInfo: (id: string, key: string) => Promise<any>
|
|
streamRange: (id: string, key: string, start: string, end: string, count: number) => Promise<any[]>
|
|
streamAdd: (id: string, key: string, streamId: string, fieldValues: string[]) => Promise<string>
|
|
streamTrim: (id: string, key: string, maxLen: number) => Promise<number>
|
|
streamDel: (id: string, key: string, ids: string[]) => Promise<number>
|
|
streamGroups: (id: string, key: string) => Promise<any[]>
|
|
streamConsumers: (id: string, key: string, group: string) => Promise<any[]>
|
|
streamGroupCreate: (id: string, key: string, group: string, startId: string, mkstream: boolean) => Promise<any>
|
|
streamGroupDestroy: (id: string, key: string, group: string) => Promise<number>
|
|
streamAck: (id: string, key: string, group: string, ids: string[]) => Promise<number>
|
|
renameKey: (id: string, oldKey: string, newKey: string) => Promise<void>
|
|
existsKey: (id: string, key: string) => Promise<boolean>
|
|
ping: (id: string) => Promise<string>
|
|
isConnected: (id: string) => Promise<boolean>
|
|
getCommandLog: () => Promise<any[]>
|
|
clearCommandLog: () => Promise<void>
|
|
decodeValue: (value: string, format: string) => Promise<string>
|
|
detectFormat: (value: string) => Promise<string>
|
|
customFormat: (value: string, command: string, key: string) => Promise<string>
|
|
subscribe: (id: string, channels: string[], isPattern: boolean) => Promise<{ success: boolean; error?: string }>
|
|
unsubscribe: (id: string) => Promise<void>
|
|
onSubscribeMessage: (callback: (msg: any) => void) => void
|
|
monitor: (id: string) => Promise<{ success: boolean; error?: string }>
|
|
monitorStop: (id: string) => Promise<void>
|
|
onMonitorMessage: (callback: (msg: any) => void) => void
|
|
}
|
|
updater: {
|
|
check: () => Promise<{ available: boolean; version?: string }>
|
|
download: () => Promise<{ success: boolean; error?: string }>
|
|
install: () => void
|
|
onStatus: (callback: (status: any) => void) => void
|
|
}
|
|
}
|
|
|
|
declare global {
|
|
interface Window {
|
|
electronAPI: ElectronAPI
|
|
}
|
|
}
|