/// import { Component } from 'react'; export interface ITerminalContent { /** Is the line a comment or code */ type: 'code' | 'comment'; /** The text to display */ text: string; /** Should the line be highlighted? */ highlight?: boolean; } export interface ITerminalPropTypes { /** Text to display */ content?: ITerminalContent[]; /** Should the terminal update in real-time? */ active?: boolean; /** Re-run the terminal once all content displayed? */ repeat?: boolean; /** Additional styles to apply */ style?: { [key: string]: string; }; /** Additional className to apply */ className?: string; } export interface ITerminalState { content: ITerminalContent[]; displayedContent: ITerminalContent[]; } export default class Terminal extends Component { props: ITerminalPropTypes; state: ITerminalState; static emptyLine: ITerminalContent; constructor(props: ITerminalPropTypes); componentDidMount(): void; typeNextLine(lineIndex: number, charIndex: number): void; displayNextLine(lineIndex?: number): void; render(): JSX.Element; }