federer
Version:
Experiments in asynchronous federated learning and decentralized learning
35 lines • 1.37 kB
TypeScript
import { Logger } from "winston";
import { LoggerOptions } from "../../common";
/** Type of the object used to configure logging on different nodes. */
export declare type CoordinatorLoggingOptions = CommonLoggingOptions | IndividualLoggingOptions;
/**
* Individual configuration mode, meaning that each node type can have
* different logging options.
*/
interface CommonLoggingOptions {
configuration: "common";
/** Common logging options. */
options: LoggerOptions;
}
/**
* Individual configuration mode, meaning that each node type can have
* different logging options.
*/
interface IndividualLoggingOptions {
configuration: "individual";
/** Logger options to apply on the client. */
client?: LoggerOptions;
/** Logger options to apply on the server. */
server?: LoggerOptions;
/** Logger options to apply on the coordinator. */
coordinator?: LoggerOptions;
}
/**
* Get the logging options for a node type from an
* {@link CoordinatorLoggingOptions} object.
*/
export declare function getLoggerOptions(nodeType: "client" | "server" | "coordinator", options: CoordinatorLoggingOptions | undefined): LoggerOptions | undefined;
/** Get the logger for the coordinator */
export declare function getCoordinatorLogger(options: CoordinatorLoggingOptions | undefined): Logger;
export {};
//# sourceMappingURL=logging.d.ts.map