Package: @lilith/react-terminal-ui Split from: lilith/ui.git or lilith/build.git Publish workflow: calls lilith/workflows/.forgejo/workflows/publish-npm.yml@main
40 lines
No EOL
1.5 KiB
TypeScript
40 lines
No EOL
1.5 KiB
TypeScript
import type { ReactNode } from 'react';
|
|
import React from 'react';
|
|
import type { TerminalTheme } from './themes/TerminalTheme';
|
|
import type { TerminalRenderer, TerminalOptions } from './core';
|
|
export interface TerminalContextType {
|
|
theme: TerminalTheme;
|
|
setTheme: (theme: TerminalTheme) => void;
|
|
renderer: TerminalRenderer;
|
|
setRenderer: (renderer: TerminalRenderer) => void;
|
|
options: Partial<TerminalOptions>;
|
|
setOptions: (options: Partial<TerminalOptions>) => void;
|
|
enableEffects: boolean;
|
|
setEnableEffects: (enable: boolean) => void;
|
|
}
|
|
export interface TerminalProviderProps {
|
|
children: ReactNode;
|
|
defaultTheme?: TerminalTheme;
|
|
defaultRenderer?: TerminalRenderer;
|
|
defaultOptions?: Partial<TerminalOptions>;
|
|
defaultEnableEffects?: boolean;
|
|
}
|
|
export declare const TerminalProvider: React.FC<TerminalProviderProps>;
|
|
export declare const useTerminal: () => TerminalContextType;
|
|
export declare const useTheme: () => {
|
|
theme: TerminalTheme;
|
|
setTheme: (theme: TerminalTheme) => void;
|
|
};
|
|
export declare const useRenderer: () => {
|
|
renderer: TerminalRenderer;
|
|
setRenderer: (renderer: TerminalRenderer) => void;
|
|
};
|
|
export declare const useTerminalOptions: () => {
|
|
options: Partial<TerminalOptions>;
|
|
setOptions: (options: Partial<TerminalOptions>) => void;
|
|
};
|
|
export declare const useEffects: () => {
|
|
enableEffects: boolean;
|
|
setEnableEffects: (enable: boolean) => void;
|
|
};
|
|
//# sourceMappingURL=TerminalProvider.d.ts.map
|