import QtQuick.tooling 1.2

// This file describes the plugin-supplied types contained in the library.
// It is used for QML tooling purposes only.
//
// This file was auto-generated by:
// 'qmlplugindump -nonrelocatable -dependencies dependencies.json QtQml.StateMachine 1.12'

Module {
    dependencies: []
    Component {
        name: "FinalState"
        defaultProperty: "children"
        prototype: "QFinalState"
        exports: ["QtQml.StateMachine/FinalState 1.0"]
        exportMetaObjectRevisions: [0]
        Property { name: "children"; type: "QObject"; isList: true; isReadonly: true }
    }
    Component {
        name: "QAbstractState"
        prototype: "QObject"
        exports: ["QtQml.StateMachine/QAbstractState 1.0"]
        isCreatable: false
        exportMetaObjectRevisions: [0]
        Property { name: "active"; type: "bool"; isReadonly: true }
        Signal { name: "entered" }
        Signal { name: "exited" }
        Signal {
            name: "activeChanged"
            Parameter { name: "active"; type: "bool" }
        }
    }
    Component {
        name: "QAbstractTransition"
        prototype: "QObject"
        Enum {
            name: "TransitionType"
            values: {
                "ExternalTransition": 0,
                "InternalTransition": 1
            }
        }
        Property { name: "sourceState"; type: "QState"; isReadonly: true; isPointer: true }
        Property { name: "targetState"; type: "QAbstractState"; isPointer: true }
        Property { name: "targetStates"; type: "QList<QAbstractState*>" }
        Property { name: "transitionType"; revision: 1; type: "TransitionType" }
        Signal { name: "triggered" }
    }
    Component { name: "QFinalState"; prototype: "QAbstractState" }
    Component {
        name: "QHistoryState"
        prototype: "QAbstractState"
        exports: ["QtQml.StateMachine/HistoryState 1.0"]
        exportMetaObjectRevisions: [0]
        Enum {
            name: "HistoryType"
            values: {
                "ShallowHistory": 0,
                "DeepHistory": 1
            }
        }
        Property { name: "defaultState"; type: "QAbstractState"; isPointer: true }
        Property { name: "defaultTransition"; type: "QAbstractTransition"; isPointer: true }
        Property { name: "historyType"; type: "HistoryType" }
    }
    Component {
        name: "QSignalTransition"
        prototype: "QAbstractTransition"
        exports: ["QtQml.StateMachine/QSignalTransition 1.0"]
        isCreatable: false
        exportMetaObjectRevisions: [0]
        Property { name: "senderObject"; type: "QObject"; isPointer: true }
        Property { name: "signal"; type: "QByteArray" }
    }
    Component {
        name: "QState"
        prototype: "QAbstractState"
        exports: ["QtQml.StateMachine/QState 1.0"]
        isCreatable: false
        exportMetaObjectRevisions: [0]
        Enum {
            name: "ChildMode"
            values: {
                "ExclusiveStates": 0,
                "ParallelStates": 1
            }
        }
        Enum {
            name: "RestorePolicy"
            values: {
                "DontRestoreProperties": 0,
                "RestoreProperties": 1
            }
        }
        Property { name: "initialState"; type: "QAbstractState"; isPointer: true }
        Property { name: "errorState"; type: "QAbstractState"; isPointer: true }
        Property { name: "childMode"; type: "ChildMode" }
        Signal { name: "finished" }
        Signal { name: "propertiesAssigned" }
    }
    Component {
        name: "QStateMachine"
        prototype: "QState"
        Property { name: "errorString"; type: "string"; isReadonly: true }
        Property { name: "globalRestorePolicy"; type: "QState::RestorePolicy" }
        Property { name: "running"; type: "bool" }
        Property { name: "animated"; type: "bool" }
        Signal { name: "started" }
        Signal { name: "stopped" }
        Signal {
            name: "runningChanged"
            Parameter { name: "running"; type: "bool" }
        }
        Method { name: "start" }
        Method { name: "stop" }
        Method {
            name: "setRunning"
            Parameter { name: "running"; type: "bool" }
        }
    }
    Component {
        name: "QTimer"
        prototype: "QObject"
        Property { name: "singleShot"; type: "bool" }
        Property { name: "interval"; type: "int" }
        Property { name: "remainingTime"; type: "int"; isReadonly: true }
        Property { name: "timerType"; type: "Qt::TimerType" }
        Property { name: "active"; type: "bool"; isReadonly: true }
        Signal { name: "timeout" }
        Method {
            name: "start"
            Parameter { name: "msec"; type: "int" }
        }
        Method { name: "start" }
        Method { name: "stop" }
    }
    Component {
        name: "SignalTransition"
        prototype: "QSignalTransition"
        exports: ["QtQml.StateMachine/SignalTransition 1.0"]
        exportMetaObjectRevisions: [0]
        Property { name: "signal"; type: "QJSValue" }
        Property { name: "guard"; type: "QQmlScriptString" }
        Signal { name: "invokeYourself" }
        Signal { name: "qmlSignalChanged" }
        Method { name: "invoke" }
    }
    Component {
        name: "State"
        defaultProperty: "children"
        prototype: "QState"
        exports: ["QtQml.StateMachine/State 1.0"]
        exportMetaObjectRevisions: [0]
        Property { name: "children"; type: "QObject"; isList: true; isReadonly: true }
    }
    Component {
        name: "StateMachine"
        defaultProperty: "children"
        prototype: "QStateMachine"
        exports: ["QtQml.StateMachine/StateMachine 1.0"]
        exportMetaObjectRevisions: [0]
        Property { name: "children"; type: "QObject"; isList: true; isReadonly: true }
        Property { name: "running"; type: "bool" }
        Signal { name: "qmlRunningChanged" }
    }
    Component {
        name: "TimeoutTransition"
        prototype: "QSignalTransition"
        exports: ["QtQml.StateMachine/TimeoutTransition 1.0"]
        exportMetaObjectRevisions: [0]
        Property { name: "timeout"; type: "int" }
    }
}
