/** * #logger.ts * * Code generated by ts-proto. DO NOT EDIT. * @packageDocumentation */ import _m0 from "protobufjs/minimal.js"; import { Observable } from "rxjs"; import { Metadata } from "../../../../lib/Types.js"; export declare enum Severity { /** * DEBUG - Debug logs should never be committed. * * These logs are always enabled in development builds but disabled in * production. */ DEBUG = 0, /** * INFO - Informational logs should be used to mark significant non-erroneous events. * Little information is significant. * * These logs are enabled by default in development builds but may be * disabled in production. */ INFO = 1, /** * WARN - Warnings should be reported as long as they do not contain sensitive data. * * These logs are always enabled. */ WARN = 2, /** * ERROR - Errors should always be reported as long as they do not contain sensitive * data. */ ERROR = 3, /** * VERBOSE - Verbose logs are useful for tracing but usually a hindrance for others not * working where the log is placed. Keep our logs clean and add with care. * * These logs are disabled by default in all environments but can be enabled. */ VERBOSE = 4, UNRECOGNIZED = -1 } export declare function severityFromJSON(object: any): Severity; export declare function severityToJSON(object: Severity): number; export interface LogErrorMessage { message: string; name: string; fileName?: string | undefined; lineNumber?: number | undefined; columnNumber?: number | undefined; stack?: string | undefined; timestamp?: Date | undefined; /** * to-do: add labels like LogEventMessage. * Deprecated 2023-01-25: Use labels instead. * * @deprecated */ tags: string[]; } /** * A notable event or historical record for analytics and security. * * Do not record sensitive data. */ export interface LogEventMessage { /** * The event kind. Events with the same type are considered instances of that * event. Eg, 'AppLoad' or 'AppHTTPRequest'. * * Unexpected event types may not be logged. */ type: string; /** The occurence time. */ timestamp?: Date | undefined; /** * Optional additional indexed information. Eg, 'direction' → 'Up' or * 'appName' → 'com.example.test'. * * Unexpected label keys may be stripped. * * Labels and data are the same except that labels are indexed. */ labels: { [key: string]: string; }; /** * Optional additional non-indexed information. Eg, 'dynamicString' → 'abc' * 'verboseDetail' -> '123'. * * Any key-value may safely be included without coordination. * * Labels and data are the same except that labels are indexed. */ data: { [key: string]: string; }; } export interface LogEventMessage_LabelsEntry { key: string; value: string; } export interface LogEventMessage_DataEntry { key: string; value: string; } export interface LogMessage { severity: Severity; message: string; /** * Most service implementations default to call time if a timestamp is not * provided. */ timestamp?: Date | undefined; /** * to-do: add labels like LogEventMessage. * Deprecated 2023-01-25: Use labels instead. * * @deprecated */ tags: string[]; } export interface LogMessages { messages: LogMessage[]; } export interface LogErrorResponse { } export interface LogEventResponse { } export interface LogResponse { } export declare const LogErrorMessage: { $type: "devvit.plugin.logger.LogErrorMessage"; encode(message: LogErrorMessage, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): LogErrorMessage; fromJSON(object: any): LogErrorMessage; toJSON(message: LogErrorMessage): unknown; create(base?: DeepPartial): LogErrorMessage; fromPartial(object: DeepPartial): LogErrorMessage; }; export declare const LogEventMessage: { $type: "devvit.plugin.logger.LogEventMessage"; encode(message: LogEventMessage, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): LogEventMessage; fromJSON(object: any): LogEventMessage; toJSON(message: LogEventMessage): unknown; create(base?: DeepPartial): LogEventMessage; fromPartial(object: DeepPartial): LogEventMessage; }; export declare const LogEventMessage_LabelsEntry: { $type: "devvit.plugin.logger.LogEventMessage.LabelsEntry"; encode(message: LogEventMessage_LabelsEntry, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): LogEventMessage_LabelsEntry; fromJSON(object: any): LogEventMessage_LabelsEntry; toJSON(message: LogEventMessage_LabelsEntry): unknown; create(base?: DeepPartial): LogEventMessage_LabelsEntry; fromPartial(object: DeepPartial): LogEventMessage_LabelsEntry; }; export declare const LogEventMessage_DataEntry: { $type: "devvit.plugin.logger.LogEventMessage.DataEntry"; encode(message: LogEventMessage_DataEntry, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): LogEventMessage_DataEntry; fromJSON(object: any): LogEventMessage_DataEntry; toJSON(message: LogEventMessage_DataEntry): unknown; create(base?: DeepPartial): LogEventMessage_DataEntry; fromPartial(object: DeepPartial): LogEventMessage_DataEntry; }; export declare const LogMessage: { $type: "devvit.plugin.logger.LogMessage"; encode(message: LogMessage, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): LogMessage; fromJSON(object: any): LogMessage; toJSON(message: LogMessage): unknown; create(base?: DeepPartial): LogMessage; fromPartial(object: DeepPartial): LogMessage; }; export declare const LogMessages: { $type: "devvit.plugin.logger.LogMessages"; encode(message: LogMessages, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): LogMessages; fromJSON(object: any): LogMessages; toJSON(message: LogMessages): unknown; create(base?: DeepPartial): LogMessages; fromPartial(object: DeepPartial): LogMessages; }; export declare const LogErrorResponse: { $type: "devvit.plugin.logger.LogErrorResponse"; encode(_: LogErrorResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): LogErrorResponse; fromJSON(_: any): LogErrorResponse; toJSON(_: LogErrorResponse): unknown; create(base?: DeepPartial): LogErrorResponse; fromPartial(_: DeepPartial): LogErrorResponse; }; export declare const LogEventResponse: { $type: "devvit.plugin.logger.LogEventResponse"; encode(_: LogEventResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): LogEventResponse; fromJSON(_: any): LogEventResponse; toJSON(_: LogEventResponse): unknown; create(base?: DeepPartial): LogEventResponse; fromPartial(_: DeepPartial): LogEventResponse; }; export declare const LogResponse: { $type: "devvit.plugin.logger.LogResponse"; encode(_: LogResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): LogResponse; fromJSON(_: any): LogResponse; toJSON(_: LogResponse): unknown; create(base?: DeepPartial): LogResponse; fromPartial(_: DeepPartial): LogResponse; }; export interface Logger { Error(request: LogErrorMessage, metadata?: Metadata): Promise; Log(request: LogMessage, metadata?: Metadata): Promise; LogBatch(request: LogMessages, metadata?: Metadata): Promise; /** * Send log messages in a stream rather than unary calls. * This can be useful for guaranteeing ordering of received log messages. */ LogStream(request: Observable, metadata?: Metadata): Promise; } export declare const LoggerServiceName = "devvit.plugin.logger.Logger"; export declare class LoggerClientImpl implements Logger { private readonly rpc; private readonly service; constructor(rpc: Rpc, opts?: { service?: string; }); Error(request: LogErrorMessage, metadata?: Metadata): Promise; Event(request: LogEventMessage, metadata?: Metadata): Promise; Log(request: LogMessage, metadata?: Metadata): Promise; LogBatch(request: LogMessages, metadata?: Metadata): Promise; LogStream(request: Observable, metadata?: Metadata): Promise; } export type LoggerDefinition = typeof LoggerDefinition; export declare const LoggerDefinition: { readonly name: "Logger"; readonly fullName: "devvit.plugin.logger.Logger"; readonly methods: { readonly error: { readonly name: "Error"; readonly requestType: { $type: "devvit.plugin.logger.LogErrorMessage"; encode(message: LogErrorMessage, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): LogErrorMessage; fromJSON(object: any): LogErrorMessage; toJSON(message: LogErrorMessage): unknown; create(base?: DeepPartial): LogErrorMessage; fromPartial(object: DeepPartial): LogErrorMessage; }; readonly requestStream: false; readonly responseType: { $type: "devvit.plugin.logger.LogErrorResponse"; encode(_: LogErrorResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): LogErrorResponse; fromJSON(_: any): LogErrorResponse; toJSON(_: LogErrorResponse): unknown; create(base?: DeepPartial): LogErrorResponse; fromPartial(_: DeepPartial): LogErrorResponse; }; readonly responseStream: false; readonly options: {}; }; /** * Record a notable event or historical record for analytics and security. * * @internal * Deprecated 2026-02-13: hasn't been used in a long time, callers removed. * * @deprecated */ readonly event: { readonly name: "Event"; readonly requestType: { $type: "devvit.plugin.logger.LogEventMessage"; encode(message: LogEventMessage, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): LogEventMessage; fromJSON(object: any): LogEventMessage; toJSON(message: LogEventMessage): unknown; create(base?: DeepPartial): LogEventMessage; fromPartial(object: DeepPartial): LogEventMessage; }; readonly requestStream: false; readonly responseType: { $type: "devvit.plugin.logger.LogEventResponse"; encode(_: LogEventResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): LogEventResponse; fromJSON(_: any): LogEventResponse; toJSON(_: LogEventResponse): unknown; create(base?: DeepPartial): LogEventResponse; fromPartial(_: DeepPartial): LogEventResponse; }; readonly responseStream: false; readonly options: {}; }; readonly log: { readonly name: "Log"; readonly requestType: { $type: "devvit.plugin.logger.LogMessage"; encode(message: LogMessage, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): LogMessage; fromJSON(object: any): LogMessage; toJSON(message: LogMessage): unknown; create(base?: DeepPartial): LogMessage; fromPartial(object: DeepPartial): LogMessage; }; readonly requestStream: false; readonly responseType: { $type: "devvit.plugin.logger.LogResponse"; encode(_: LogResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): LogResponse; fromJSON(_: any): LogResponse; toJSON(_: LogResponse): unknown; create(base?: DeepPartial): LogResponse; fromPartial(_: DeepPartial): LogResponse; }; readonly responseStream: false; readonly options: {}; }; readonly logBatch: { readonly name: "LogBatch"; readonly requestType: { $type: "devvit.plugin.logger.LogMessages"; encode(message: LogMessages, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): LogMessages; fromJSON(object: any): LogMessages; toJSON(message: LogMessages): unknown; create(base?: DeepPartial): LogMessages; fromPartial(object: DeepPartial): LogMessages; }; readonly requestStream: false; readonly responseType: { $type: "devvit.plugin.logger.LogResponse"; encode(_: LogResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): LogResponse; fromJSON(_: any): LogResponse; toJSON(_: LogResponse): unknown; create(base?: DeepPartial): LogResponse; fromPartial(_: DeepPartial): LogResponse; }; readonly responseStream: false; readonly options: {}; }; /** * Send log messages in a stream rather than unary calls. * This can be useful for guaranteeing ordering of received log messages. */ readonly logStream: { readonly name: "LogStream"; readonly requestType: { $type: "devvit.plugin.logger.LogMessage"; encode(message: LogMessage, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): LogMessage; fromJSON(object: any): LogMessage; toJSON(message: LogMessage): unknown; create(base?: DeepPartial): LogMessage; fromPartial(object: DeepPartial): LogMessage; }; readonly requestStream: true; readonly responseType: { $type: "devvit.plugin.logger.LogResponse"; encode(_: LogResponse, writer?: _m0.Writer): _m0.Writer; decode(input: _m0.Reader | Uint8Array, length?: number): LogResponse; fromJSON(_: any): LogResponse; toJSON(_: LogResponse): unknown; create(base?: DeepPartial): LogResponse; fromPartial(_: DeepPartial): LogResponse; }; readonly responseStream: false; readonly options: {}; }; }; }; interface Rpc { request(service: string, method: string, data: Uint8Array, metadata?: Metadata): Promise; clientStreamingRequest(service: string, method: string, data: Observable, metadata?: Metadata): Promise; serverStreamingRequest(service: string, method: string, data: Uint8Array, metadata?: Metadata): Observable; bidirectionalStreamingRequest(service: string, method: string, data: Observable, metadata?: Metadata): Observable; } type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; type DeepPartial = T extends Builtin ? T : T extends globalThis.Array ? globalThis.Array> : T extends ReadonlyArray ? ReadonlyArray> : T extends {} ? { [K in keyof T]?: DeepPartial; } : Partial; export {}; //# sourceMappingURL=logger.d.ts.map