import React from "react";
declare type props = {
    text?: string;
    style?: any;
    cycle?: string[];
    cycleDelay?: number;
    loop?: boolean;
    typeSettings?: {
        stutterTime?: number;
        typeDelay?: number;
        initialDelay?: number;
        stutterChance: number;
    };
    cursorSettings?: {
        cursorBlinkSpeed?: number;
        color?: string;
    };
    onMouseLeave?: (event: any) => void;
    onMouseEnter?: (event: any) => void;
    onClick?: (event: any) => void;
    id?: string;
};
declare type states = {
    text: string[];
    cursor: boolean;
    typing: boolean;
    reverseType: boolean;
    hasCycled: boolean;
    cycleEnded: boolean;
};
export default class Typewriter extends React.Component<props, states> {
    cursorNormalStyle: any;
    cursorInvisibleStyle: any;
    cursorBlinkTimer: number;
    typeTimer: number;
    typeDelay: number;
    index: number;
    cursorBlinkSpeed: number;
    backgroundColor: any;
    stutterInterval: number;
    stutterTime: number;
    text: string;
    cycleIndex: number;
    cycleDelay: number;
    cycleTimer: number;
    initialDelay: number;
    isActive: any;
    constructor(props: props);
    shouldIStutter: () => void;
    type: () => void;
    handleCycle: () => void;
    animate: () => void;
    componentDidMount(): void;
    componentWillUnmount(): void;
    render(): JSX.Element;
}
export {};
