//Auto-generated by kalyptus. DO NOT EDIT.
namespace Qyoto {
    using System;
    [SmokeClass("QScriptValueIterator")]
    public class QScriptValueIterator : Object, IDisposable {
        protected SmokeInvocation interceptor = null;
        private IntPtr smokeObject;
        protected QScriptValueIterator(Type dummy) {}
        protected void CreateProxy() {
            interceptor = new SmokeInvocation(typeof(QScriptValueIterator), this);
        }
        public QScriptValueIterator(QScriptValue value) : this((Type) null) {
            CreateProxy();
            interceptor.Invoke("QScriptValueIterator#", "QScriptValueIterator(const QScriptValue&)", typeof(void), typeof(QScriptValue), value);
        }
        public bool HasNext() {
            return (bool) interceptor.Invoke("hasNext", "hasNext() const", typeof(bool));
        }
        public void Next() {
            interceptor.Invoke("next", "next()", typeof(void));
        }
        public bool HasPrevious() {
            return (bool) interceptor.Invoke("hasPrevious", "hasPrevious() const", typeof(bool));
        }
        public void Previous() {
            interceptor.Invoke("previous", "previous()", typeof(void));
        }
        public string Name() {
            return (string) interceptor.Invoke("name", "name() const", typeof(string));
        }
        public QScriptString ScriptName() {
            return (QScriptString) interceptor.Invoke("scriptName", "scriptName() const", typeof(QScriptString));
        }
        public QScriptValue Value() {
            return (QScriptValue) interceptor.Invoke("value", "value() const", typeof(QScriptValue));
        }
        public void SetValue(QScriptValue value) {
            interceptor.Invoke("setValue#", "setValue(const QScriptValue&)", typeof(void), typeof(QScriptValue), value);
        }
        public uint Flags() {
            return (uint) interceptor.Invoke("flags", "flags() const", typeof(uint));
        }
        public void Remove() {
            interceptor.Invoke("remove", "remove()", typeof(void));
        }
        public void ToFront() {
            interceptor.Invoke("toFront", "toFront()", typeof(void));
        }
        public void ToBack() {
            interceptor.Invoke("toBack", "toBack()", typeof(void));
        }
        ~QScriptValueIterator() {
            interceptor.Invoke("~QScriptValueIterator", "~QScriptValueIterator()", typeof(void));
        }
        public void Dispose() {
            interceptor.Invoke("~QScriptValueIterator", "~QScriptValueIterator()", typeof(void));
        }
    }
}
