50 lines
1.0 KiB
TypeScript
50 lines
1.0 KiB
TypeScript
export interface IServerStatus {
|
|
running: boolean;
|
|
objstPort: number;
|
|
uiPort: number;
|
|
uptime: number;
|
|
startedAt: number;
|
|
bucketCount: number;
|
|
totalObjectCount: number;
|
|
totalStorageBytes: number;
|
|
storageDirectory: string;
|
|
region: string;
|
|
authEnabled: boolean;
|
|
}
|
|
|
|
export interface IServerConfig {
|
|
objstPort: number;
|
|
uiPort: number;
|
|
region: string;
|
|
storageDirectory: string;
|
|
authEnabled: boolean;
|
|
corsEnabled: boolean;
|
|
// Cluster
|
|
clusterEnabled: boolean;
|
|
clusterNodeId: string;
|
|
clusterQuicPort: number;
|
|
clusterSeedNodes: string[];
|
|
// Erasure coding
|
|
erasureDataShards: number;
|
|
erasureParityShards: number;
|
|
erasureChunkSizeBytes: number;
|
|
// Multi-drive
|
|
drivePaths: string[];
|
|
// Cluster heartbeat
|
|
clusterHeartbeatIntervalMs: number;
|
|
clusterHeartbeatTimeoutMs: number;
|
|
}
|
|
|
|
export interface IObjstCredential {
|
|
accessKeyId: string;
|
|
secretAccessKey: string;
|
|
}
|
|
|
|
export interface IConnectionInfo {
|
|
endpoint: string;
|
|
port: number;
|
|
useSsl: boolean;
|
|
accessKey: string;
|
|
region: string;
|
|
}
|