@bacons/expo-metro-runtime
Version:
Tools for making experimental Metro bundler features work
61 lines (60 loc) • 1.83 kB
TypeScript
/**
* Copyright (c) Evan Bacon.
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
import type { Category, Message, ComponentStack, CodeFrame } from "./parseLogBoxLog";
import type { Stack } from "./LogBoxSymbolication";
declare type SymbolicationStatus = "NONE" | "PENDING" | "COMPLETE" | "FAILED";
export declare type LogLevel = "warn" | "error" | "fatal" | "syntax";
export declare type LogBoxLogData = {
level: LogLevel;
type?: string;
message: Message;
stack: Stack;
category: string;
componentStack: ComponentStack;
codeFrame?: CodeFrame;
isComponentError: boolean;
};
export declare type StackType = "stack" | "component";
export declare class LogBoxLog {
message: Message;
type: string;
category: Category;
componentStack: ComponentStack;
stack: Stack;
count: number;
level: LogLevel;
codeFrame?: CodeFrame;
isComponentError: boolean;
symbolicated: Record<StackType, {
error: null;
stack: null;
status: "NONE";
} | {
error: null;
stack: null;
status: "PENDING";
} | {
error: null;
stack: Stack;
status: "COMPLETE";
} | {
error: Error;
stack: null;
status: "FAILED";
}>;
constructor(data: LogBoxLogData);
incrementCount(): void;
getAvailableStack(type: StackType): Stack | null;
retrySymbolicate(type: StackType, callback?: (status: SymbolicationStatus) => void): void;
symbolicate(type: StackType, callback?: (status: SymbolicationStatus) => void): void;
private componentStackCache;
private getStack;
private handleSymbolicate;
private updateStatus;
}
export {};