//Auto-generated by kalyptus. DO NOT EDIT.
namespace Qyoto {
    using System;
    [SmokeClass("QScriptClassPropertyIterator")]
    public abstract class QScriptClassPropertyIterator : Object {
        protected SmokeInvocation interceptor = null;
        private IntPtr smokeObject;
        protected QScriptClassPropertyIterator(Type dummy) {}
        protected void CreateProxy() {
            interceptor = new SmokeInvocation(typeof(QScriptClassPropertyIterator), this);
        }
        // QScriptClassPropertyIterator* QScriptClassPropertyIterator(const QScriptValue& arg1,QScriptClassPropertyIteratorPrivate& arg2); >>>> NOT CONVERTED
        public QScriptValue Object() {
            return (QScriptValue) interceptor.Invoke("object", "object() const", typeof(QScriptValue));
        }
        [SmokeMethod("hasNext() const")]
        public abstract bool HasNext();
        [SmokeMethod("next()")]
        public abstract void Next();
        [SmokeMethod("hasPrevious() const")]
        public abstract bool HasPrevious();
        [SmokeMethod("previous()")]
        public abstract void Previous();
        [SmokeMethod("toFront()")]
        public abstract void ToFront();
        [SmokeMethod("toBack()")]
        public abstract void ToBack();
        [SmokeMethod("name() const")]
        public abstract QScriptString Name();
        [SmokeMethod("id() const")]
        public virtual uint Id() {
            return (uint) interceptor.Invoke("id", "id() const", typeof(uint));
        }
        [SmokeMethod("flags() const")]
        public virtual uint Flags() {
            return (uint) interceptor.Invoke("flags", "flags() const", typeof(uint));
        }
        public QScriptClassPropertyIterator(QScriptValue arg1) : this((Type) null) {
            CreateProxy();
            interceptor.Invoke("QScriptClassPropertyIterator#", "QScriptClassPropertyIterator(const QScriptValue&)", typeof(void), typeof(QScriptValue), arg1);
        }
    }
}
