package

context(Logger, Storage<User>) public fun userInfo(/*0*/ name: kotlin.String): Storage<User>.Info?

public final class Logger {
    public constructor Logger()
    public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
    public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
    public final fun info(/*0*/ message: kotlin.String): kotlin.Unit
    public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}

public final class Storage</*0*/ T> {
    public constructor Storage</*0*/ T>()
    public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
    public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
    public final fun info(/*0*/ name: kotlin.String): Storage<T>.Info
    public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String

    public final inner class Info /*captured type parameters: /*0*/ T*/ {
        public constructor Info()
        public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
        public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
        public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
    }
}

public final class User {
    public constructor User()
    public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
    public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
    public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
