package-fragment kotlin.collections

public abstract class BooleanIterator : kotlin.collections.Iterator<kotlin.Boolean> {
    /*primary*/ public constructor BooleanIterator()
    public abstract override /*1*/ /*fake_override*/ fun hasNext(): kotlin.Boolean
    public final override /*1*/ fun next(): kotlin.Boolean
    public abstract fun nextBoolean(): kotlin.Boolean
}

public abstract class ByteIterator : kotlin.collections.Iterator<kotlin.Byte> {
    /*primary*/ public constructor ByteIterator()
    public abstract override /*1*/ /*fake_override*/ fun hasNext(): kotlin.Boolean
    public final override /*1*/ fun next(): kotlin.Byte
    public abstract fun nextByte(): kotlin.Byte
}

public abstract class CharIterator : kotlin.collections.Iterator<kotlin.Char> {
    /*primary*/ public constructor CharIterator()
    public abstract override /*1*/ /*fake_override*/ fun hasNext(): kotlin.Boolean
    public final override /*1*/ fun next(): kotlin.Char
    public abstract fun nextChar(): kotlin.Char
}

public interface Collection</*0*/ out E> : kotlin.collections.Iterable<E> {
    public abstract val size: kotlin.Int
        public abstract fun `<get-size>`(): kotlin.Int
    public abstract operator fun contains(/*0*/ element: E): kotlin.Boolean
    public abstract fun containsAll(/*0*/ elements: kotlin.collections.Collection<E>): kotlin.Boolean
    public abstract fun isEmpty(): kotlin.Boolean
    public abstract override /*1*/ fun iterator(): kotlin.collections.Iterator<E>
    @kotlin.Deprecated(level = DeprecationLevel.WARNING, message = "This member is not fully supported by Kotlin compiler, so it may be absent or have different signature in next major version", replaceWith = kotlin.ReplaceWith(expression = "", imports = {})) public abstract fun nonExistingMethod(/*0*/ p0: E!): kotlin.String!
}

public abstract class DoubleIterator : kotlin.collections.Iterator<kotlin.Double> {
    /*primary*/ public constructor DoubleIterator()
    public abstract override /*1*/ /*fake_override*/ fun hasNext(): kotlin.Boolean
    public final override /*1*/ fun next(): kotlin.Double
    public abstract fun nextDouble(): kotlin.Double
}

public abstract class FloatIterator : kotlin.collections.Iterator<kotlin.Float> {
    /*primary*/ public constructor FloatIterator()
    public abstract override /*1*/ /*fake_override*/ fun hasNext(): kotlin.Boolean
    public final override /*1*/ fun next(): kotlin.Float
    public abstract fun nextFloat(): kotlin.Float
}

public abstract class IntIterator : kotlin.collections.Iterator<kotlin.Int> {
    /*primary*/ public constructor IntIterator()
    public abstract override /*1*/ /*fake_override*/ fun hasNext(): kotlin.Boolean
    public final override /*1*/ fun next(): kotlin.Int
    public abstract fun nextInt(): kotlin.Int
}

public interface Iterable</*0*/ out T> {
    public abstract operator fun iterator(): kotlin.collections.Iterator<T>
}

public interface Iterator</*0*/ out T> {
    public abstract operator fun hasNext(): kotlin.Boolean
    public abstract operator fun next(): T
}

public interface List</*0*/ out E> : kotlin.collections.Collection<E> {
    public abstract override /*1*/ val size: kotlin.Int
        public abstract override /*1*/ fun `<get-size>`(): kotlin.Int
    public abstract override /*1*/ fun contains(/*0*/ element: E): kotlin.Boolean
    public abstract override /*1*/ fun containsAll(/*0*/ elements: kotlin.collections.Collection<E>): kotlin.Boolean
    public abstract operator fun get(/*0*/ index: kotlin.Int): E
    public abstract fun indexOf(/*0*/ element: E): kotlin.Int
    public abstract override /*1*/ fun isEmpty(): kotlin.Boolean
    public abstract override /*1*/ fun iterator(): kotlin.collections.Iterator<E>
    public abstract fun lastIndexOf(/*0*/ element: E): kotlin.Int
    public abstract fun listIterator(): kotlin.collections.ListIterator<E>
    public abstract fun listIterator(/*0*/ index: kotlin.Int): kotlin.collections.ListIterator<E>
    @kotlin.Deprecated(level = DeprecationLevel.WARNING, message = "This member is not fully supported by Kotlin compiler, so it may be absent or have different signature in next major version", replaceWith = kotlin.ReplaceWith(expression = "", imports = {})) public abstract override /*1*/ /*fake_override*/ fun nonExistingMethod(/*0*/ p0: E!): kotlin.String!
    public abstract fun subList(/*0*/ fromIndex: kotlin.Int, /*1*/ toIndex: kotlin.Int): kotlin.collections.List<E>
}

public interface ListIterator</*0*/ out T> : kotlin.collections.Iterator<T> {
    public abstract override /*1*/ fun hasNext(): kotlin.Boolean
    public abstract fun hasPrevious(): kotlin.Boolean
    public abstract override /*1*/ fun next(): T
    public abstract fun nextIndex(): kotlin.Int
    public abstract fun previous(): T
    public abstract fun previousIndex(): kotlin.Int
}

public abstract class LongIterator : kotlin.collections.Iterator<kotlin.Long> {
    /*primary*/ public constructor LongIterator()
    public abstract override /*1*/ /*fake_override*/ fun hasNext(): kotlin.Boolean
    public final override /*1*/ fun next(): kotlin.Long
    public abstract fun nextLong(): kotlin.Long
}

public interface Map</*0*/ K, /*1*/ out V> {
    public abstract val entries: kotlin.collections.Set<kotlin.collections.Map.Entry<K, V>>
        public abstract fun `<get-entries>`(): kotlin.collections.Set<kotlin.collections.Map.Entry<K, V>>
    public abstract val keys: kotlin.collections.Set<K>
        public abstract fun `<get-keys>`(): kotlin.collections.Set<K>
    public abstract val size: kotlin.Int
        public abstract fun `<get-size>`(): kotlin.Int
    public abstract val values: kotlin.collections.Collection<V>
        public abstract fun `<get-values>`(): kotlin.collections.Collection<V>
    public abstract fun containsKey(/*0*/ key: K): kotlin.Boolean
    public abstract fun containsValue(/*0*/ value: V): kotlin.Boolean
    public abstract operator fun get(/*0*/ key: K): V?
    public abstract fun isEmpty(): kotlin.Boolean

    public interface Entry</*0*/ out K, /*1*/ out V> {
        public abstract val key: K
            public abstract fun `<get-key>`(): K
        public abstract val value: V
            public abstract fun `<get-value>`(): V
    }
}

public interface MutableCollection</*0*/ E> : kotlin.collections.Collection<E>, kotlin.collections.MutableIterable<E> {
    public abstract override /*1*/ /*fake_override*/ val size: kotlin.Int
        public abstract override /*1*/ /*fake_override*/ fun `<get-size>`(): kotlin.Int
    public abstract fun add(/*0*/ element: E): kotlin.Boolean
    public abstract fun addAll(/*0*/ elements: kotlin.collections.Collection<E>): kotlin.Boolean
    public abstract fun clear(): kotlin.Unit
    public abstract override /*1*/ /*fake_override*/ fun contains(/*0*/ element: E): kotlin.Boolean
    public abstract override /*1*/ /*fake_override*/ fun containsAll(/*0*/ elements: kotlin.collections.Collection<E>): kotlin.Boolean
    public abstract override /*1*/ /*fake_override*/ fun isEmpty(): kotlin.Boolean
    public abstract override /*2*/ fun iterator(): kotlin.collections.MutableIterator<E>
    @kotlin.Deprecated(level = DeprecationLevel.WARNING, message = "This member is not fully supported by Kotlin compiler, so it may be absent or have different signature in next major version", replaceWith = kotlin.ReplaceWith(expression = "", imports = {})) public abstract override /*1*/ /*fake_override*/ fun nonExistingMethod(/*0*/ p0: E!): kotlin.String!
    public abstract fun remove(/*0*/ element: E): kotlin.Boolean
    public abstract fun removeAll(/*0*/ elements: kotlin.collections.Collection<E>): kotlin.Boolean
    public abstract fun retainAll(/*0*/ elements: kotlin.collections.Collection<E>): kotlin.Boolean
}

public interface MutableIterable</*0*/ out T> : kotlin.collections.Iterable<T> {
    public abstract override /*1*/ fun iterator(): kotlin.collections.MutableIterator<T>
}

public interface MutableIterator</*0*/ out T> : kotlin.collections.Iterator<T> {
    public abstract override /*1*/ /*fake_override*/ fun hasNext(): kotlin.Boolean
    public abstract override /*1*/ /*fake_override*/ fun next(): T
    public abstract fun remove(): kotlin.Unit
}

public interface MutableList</*0*/ E> : kotlin.collections.List<E>, kotlin.collections.MutableCollection<E> {
    public abstract override /*2*/ /*fake_override*/ val size: kotlin.Int
        public abstract override /*2*/ /*fake_override*/ fun `<get-size>`(): kotlin.Int
    public abstract override /*1*/ fun add(/*0*/ element: E): kotlin.Boolean
    public abstract fun add(/*0*/ index: kotlin.Int, /*1*/ element: E): kotlin.Unit
    public abstract fun addAll(/*0*/ index: kotlin.Int, /*1*/ elements: kotlin.collections.Collection<E>): kotlin.Boolean
    public abstract override /*1*/ fun addAll(/*0*/ elements: kotlin.collections.Collection<E>): kotlin.Boolean
    public abstract override /*1*/ fun clear(): kotlin.Unit
    public abstract override /*2*/ /*fake_override*/ fun contains(/*0*/ element: E): kotlin.Boolean
    public abstract override /*2*/ /*fake_override*/ fun containsAll(/*0*/ elements: kotlin.collections.Collection<E>): kotlin.Boolean
    public abstract override /*1*/ /*fake_override*/ fun get(/*0*/ index: kotlin.Int): E
    public abstract override /*1*/ /*fake_override*/ fun indexOf(/*0*/ element: E): kotlin.Int
    public abstract override /*2*/ /*fake_override*/ fun isEmpty(): kotlin.Boolean
    public abstract override /*2*/ /*fake_override*/ fun iterator(): kotlin.collections.MutableIterator<E>
    public abstract override /*1*/ /*fake_override*/ fun lastIndexOf(/*0*/ element: E): kotlin.Int
    public abstract override /*1*/ fun listIterator(): kotlin.collections.MutableListIterator<E>
    public abstract override /*1*/ fun listIterator(/*0*/ index: kotlin.Int): kotlin.collections.MutableListIterator<E>
    @kotlin.Deprecated(level = DeprecationLevel.WARNING, message = "This member is not fully supported by Kotlin compiler, so it may be absent or have different signature in next major version", replaceWith = kotlin.ReplaceWith(expression = "", imports = {})) public abstract override /*2*/ /*fake_override*/ fun nonExistingMethod(/*0*/ p0: E!): kotlin.String!
    public abstract override /*1*/ fun remove(/*0*/ element: E): kotlin.Boolean
    public abstract override /*1*/ fun removeAll(/*0*/ elements: kotlin.collections.Collection<E>): kotlin.Boolean
    public abstract fun removeAt(/*0*/ index: kotlin.Int): E
    public abstract override /*1*/ fun retainAll(/*0*/ elements: kotlin.collections.Collection<E>): kotlin.Boolean
    public abstract operator fun set(/*0*/ index: kotlin.Int, /*1*/ element: E): E
    public abstract override /*1*/ fun subList(/*0*/ fromIndex: kotlin.Int, /*1*/ toIndex: kotlin.Int): kotlin.collections.MutableList<E>
}

public interface MutableListIterator</*0*/ T> : kotlin.collections.ListIterator<T>, kotlin.collections.MutableIterator<T> {
    public abstract fun add(/*0*/ element: T): kotlin.Unit
    public abstract override /*2*/ fun hasNext(): kotlin.Boolean
    public abstract override /*1*/ /*fake_override*/ fun hasPrevious(): kotlin.Boolean
    public abstract override /*2*/ fun next(): T
    public abstract override /*1*/ /*fake_override*/ fun nextIndex(): kotlin.Int
    public abstract override /*1*/ /*fake_override*/ fun previous(): T
    public abstract override /*1*/ /*fake_override*/ fun previousIndex(): kotlin.Int
    public abstract override /*1*/ fun remove(): kotlin.Unit
    public abstract fun set(/*0*/ element: T): kotlin.Unit
}

public interface MutableMap</*0*/ K, /*1*/ V> : kotlin.collections.Map<K, V> {
    public abstract override /*1*/ val entries: kotlin.collections.MutableSet<kotlin.collections.MutableMap.MutableEntry<K, V>>
        public abstract override /*1*/ fun `<get-entries>`(): kotlin.collections.MutableSet<kotlin.collections.MutableMap.MutableEntry<K, V>>
    public abstract override /*1*/ val keys: kotlin.collections.MutableSet<K>
        public abstract override /*1*/ fun `<get-keys>`(): kotlin.collections.MutableSet<K>
    public abstract override /*1*/ /*fake_override*/ val size: kotlin.Int
        public abstract override /*1*/ /*fake_override*/ fun `<get-size>`(): kotlin.Int
    public abstract override /*1*/ val values: kotlin.collections.MutableCollection<V>
        public abstract override /*1*/ fun `<get-values>`(): kotlin.collections.MutableCollection<V>
    public abstract fun clear(): kotlin.Unit
    public abstract override /*1*/ /*fake_override*/ fun containsKey(/*0*/ key: K): kotlin.Boolean
    public abstract override /*1*/ /*fake_override*/ fun containsValue(/*0*/ value: V): kotlin.Boolean
    public abstract override /*1*/ /*fake_override*/ fun get(/*0*/ key: K): V?
    public abstract override /*1*/ /*fake_override*/ fun isEmpty(): kotlin.Boolean
    public abstract fun put(/*0*/ key: K, /*1*/ value: V): V?
    public abstract fun putAll(/*0*/ from: kotlin.collections.Map<out K, V>): kotlin.Unit
    public abstract fun remove(/*0*/ key: K): V?

    public interface MutableEntry</*0*/ K, /*1*/ V> : kotlin.collections.Map.Entry<K, V> {
        public abstract override /*1*/ /*fake_override*/ val key: K
            public abstract override /*1*/ /*fake_override*/ fun `<get-key>`(): K
        public abstract override /*1*/ /*fake_override*/ val value: V
            public abstract override /*1*/ /*fake_override*/ fun `<get-value>`(): V
        public abstract fun setValue(/*0*/ newValue: V): V
    }
}

public interface MutableSet</*0*/ E> : kotlin.collections.Set<E>, kotlin.collections.MutableCollection<E> {
    public abstract override /*2*/ /*fake_override*/ val size: kotlin.Int
        public abstract override /*2*/ /*fake_override*/ fun `<get-size>`(): kotlin.Int
    public abstract override /*1*/ fun add(/*0*/ element: E): kotlin.Boolean
    public abstract override /*1*/ fun addAll(/*0*/ elements: kotlin.collections.Collection<E>): kotlin.Boolean
    public abstract override /*1*/ fun clear(): kotlin.Unit
    public abstract override /*2*/ /*fake_override*/ fun contains(/*0*/ element: E): kotlin.Boolean
    public abstract override /*2*/ /*fake_override*/ fun containsAll(/*0*/ elements: kotlin.collections.Collection<E>): kotlin.Boolean
    public abstract override /*2*/ /*fake_override*/ fun isEmpty(): kotlin.Boolean
    public abstract override /*2*/ fun iterator(): kotlin.collections.MutableIterator<E>
    @kotlin.Deprecated(level = DeprecationLevel.WARNING, message = "This member is not fully supported by Kotlin compiler, so it may be absent or have different signature in next major version", replaceWith = kotlin.ReplaceWith(expression = "", imports = {})) public abstract override /*2*/ /*fake_override*/ fun nonExistingMethod(/*0*/ p0: E!): kotlin.String!
    public abstract override /*1*/ fun remove(/*0*/ element: E): kotlin.Boolean
    public abstract override /*1*/ fun removeAll(/*0*/ elements: kotlin.collections.Collection<E>): kotlin.Boolean
    public abstract override /*1*/ fun retainAll(/*0*/ elements: kotlin.collections.Collection<E>): kotlin.Boolean
}

public interface Set</*0*/ out E> : kotlin.collections.Collection<E> {
    public abstract override /*1*/ val size: kotlin.Int
        public abstract override /*1*/ fun `<get-size>`(): kotlin.Int
    public abstract override /*1*/ fun contains(/*0*/ element: E): kotlin.Boolean
    public abstract override /*1*/ fun containsAll(/*0*/ elements: kotlin.collections.Collection<E>): kotlin.Boolean
    public abstract override /*1*/ fun isEmpty(): kotlin.Boolean
    public abstract override /*1*/ fun iterator(): kotlin.collections.Iterator<E>
    @kotlin.Deprecated(level = DeprecationLevel.WARNING, message = "This member is not fully supported by Kotlin compiler, so it may be absent or have different signature in next major version", replaceWith = kotlin.ReplaceWith(expression = "", imports = {})) public abstract override /*1*/ /*fake_override*/ fun nonExistingMethod(/*0*/ p0: E!): kotlin.String!
}

public abstract class ShortIterator : kotlin.collections.Iterator<kotlin.Short> {
    /*primary*/ public constructor ShortIterator()
    public abstract override /*1*/ /*fake_override*/ fun hasNext(): kotlin.Boolean
    public final override /*1*/ fun next(): kotlin.Short
    public abstract fun nextShort(): kotlin.Short
}
