package hanson.xyz.vpnhotspotmod.util;

@kotlin.Metadata(mv = {1, 9, 0}, k = 1, xi = 48, d1 = {"\u00002\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\b\u0002\n\u0002\u0018\u0002\n\u0000\n\u0002\u0010\u0002\n\u0000\n\u0002\u0010\u0001\n\u0000\n\u0002\u0010\u000e\n\u0000\n\u0002\u0018\u0002\n\u0000\n\u0002\u0010\u000b\n\u0002\b\u0005\u0018\u0000 \u00112\u00020\u0001:\u0002\u0011\u0012B\u0005\u00a2\u0006\u0002\u0010\u0002J\b\u0010\u0005\u001a\u00020\u0006H\u0016J\u0010\u0010\u0007\u001a\u0004\u0018\u00010\b2\u0006\u0010\t\u001a\u00020\nJ\u0018\u0010\u000b\u001a\u00020\f2\u0006\u0010\t\u001a\u00020\n2\b\b\u0002\u0010\r\u001a\u00020\u000eJ\u0015\u0010\u000f\u001a\u0004\u0018\u00010\u00062\u0006\u0010\t\u001a\u00020\n\u00a2\u0006\u0002\u0010\u0010R\u0010\u0010\u0003\u001a\u0004\u0018\u00010\u0004X\u0082\u000e\u00a2\u0006\u0002\n\u0000\u00a8\u0006\u0013"}, d2 = {"Lhanson/xyz/vpnhotspotmod/util/RootSession;", "Ljava/lang/AutoCloseable;", "()V", "server", "Lbe/mygod/librootkotlinx/RootServer;", "close", "", "exec", "", "command", "", "execQuiet", "Lhanson/xyz/vpnhotspotmod/root/RoutingCommands$ProcessResult;", "redirect", "", "submit", "(Ljava/lang/String;)Lkotlin/Unit;", "Companion", "Transaction", "mobile_freedomDebug"})
public final class RootSession implements java.lang.AutoCloseable {
    @org.jetbrains.annotations.NotNull
    private static final java.util.concurrent.locks.ReentrantLock monitor = null;
    @org.jetbrains.annotations.Nullable
    private be.mygod.librootkotlinx.RootServer server;
    @org.jetbrains.annotations.NotNull
    public static final hanson.xyz.vpnhotspotmod.util.RootSession.Companion Companion = null;
    
    public RootSession() {
        super();
    }
    
    @java.lang.Override
    public void close() {
    }
    
    /**
     * Don't care about the results, but still sync.
     */
    @org.jetbrains.annotations.Nullable
    public final kotlin.Unit submit(@org.jetbrains.annotations.NotNull
    java.lang.String command) {
        return null;
    }
    
    @org.jetbrains.annotations.NotNull
    public final hanson.xyz.vpnhotspotmod.root.RoutingCommands.ProcessResult execQuiet(@org.jetbrains.annotations.NotNull
    java.lang.String command, boolean redirect) {
        return null;
    }
    
    @org.jetbrains.annotations.Nullable
    public final java.lang.Void exec(@org.jetbrains.annotations.NotNull
    java.lang.String command) {
        return null;
    }
    
    @kotlin.Metadata(mv = {1, 9, 0}, k = 1, xi = 48, d1 = {"\u0000&\n\u0002\u0018\u0002\n\u0002\u0010\u0000\n\u0002\b\u0002\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\b\u0003\n\u0002\u0018\u0002\n\u0002\b\u0002\b\u0086\u0003\u0018\u00002\u00020\u0001B\u0007\b\u0002\u00a2\u0006\u0002\u0010\u0002J\n\u0010\u0005\u001a\u00060\u0006R\u00020\u0007J%\u0010\b\u001a\u0002H\t\"\u0004\b\u0000\u0010\t2\u0012\u0010\n\u001a\u000e\u0012\u0004\u0012\u00020\u0007\u0012\u0004\u0012\u0002H\t0\u000b\u00a2\u0006\u0002\u0010\fR\u000e\u0010\u0003\u001a\u00020\u0004X\u0082\u0004\u00a2\u0006\u0002\n\u0000\u00a8\u0006\r"}, d2 = {"Lhanson/xyz/vpnhotspotmod/util/RootSession$Companion;", "", "()V", "monitor", "Ljava/util/concurrent/locks/ReentrantLock;", "beginTransaction", "Lhanson/xyz/vpnhotspotmod/util/RootSession$Transaction;", "Lhanson/xyz/vpnhotspotmod/util/RootSession;", "use", "T", "operation", "Lkotlin/Function1;", "(Lkotlin/jvm/functions/Function1;)Ljava/lang/Object;", "mobile_freedomDebug"})
    public static final class Companion {
        
        private Companion() {
            super();
        }
        
        public final <T extends java.lang.Object>T use(@org.jetbrains.annotations.NotNull
        kotlin.jvm.functions.Function1<? super hanson.xyz.vpnhotspotmod.util.RootSession, ? extends T> operation) {
            return null;
        }
        
        @org.jetbrains.annotations.NotNull
        public final hanson.xyz.vpnhotspotmod.util.RootSession.Transaction beginTransaction() {
            return null;
        }
    }
    
    /**
     * This transaction is different from what you may have in mind since you can revert it after committing it.
     */
    @kotlin.Metadata(mv = {1, 9, 0}, k = 1, xi = 48, d1 = {"\u0000:\n\u0002\u0018\u0002\n\u0002\u0010\u0000\n\u0002\b\u0002\n\u0002\u0018\u0002\n\u0002\u0010\u000e\n\u0000\n\u0002\u0010\u0002\n\u0000\n\u0002\u0010\u0001\n\u0002\b\u0003\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0000\b\u0086\u0004\u0018\u00002\u00020\u0001B\u0005\u00a2\u0006\u0002\u0010\u0002J\u0006\u0010\u0006\u001a\u00020\u0007J\u001c\u0010\b\u001a\u0004\u0018\u00010\t2\u0006\u0010\n\u001a\u00020\u00052\n\b\u0002\u0010\u000b\u001a\u0004\u0018\u00010\u0005J\u001a\u0010\f\u001a\u00020\r2\u0006\u0010\n\u001a\u00020\u00052\n\b\u0002\u0010\u000b\u001a\u0004\u0018\u00010\u0005J\u0006\u0010\u000b\u001a\u00020\u0007J\'\u0010\u000e\u001a\u00060\u0000R\u00020\u000f2\u001b\u0010\u0010\u001a\u0017\u0012\b\u0012\u00060\u0000R\u00020\u000f\u0012\u0004\u0012\u00020\u00070\u0011\u00a2\u0006\u0002\b\u0012R\u0014\u0010\u0003\u001a\b\u0012\u0004\u0012\u00020\u00050\u0004X\u0082\u0004\u00a2\u0006\u0002\n\u0000\u00a8\u0006\u0013"}, d2 = {"Lhanson/xyz/vpnhotspotmod/util/RootSession$Transaction;", "", "(Lhanson/xyz/vpnhotspotmod/util/RootSession;)V", "revertCommands", "Ljava/util/LinkedList;", "", "commit", "", "exec", "", "command", "revert", "execQuiet", "Lhanson/xyz/vpnhotspotmod/root/RoutingCommands$ProcessResult;", "safeguard", "Lhanson/xyz/vpnhotspotmod/util/RootSession;", "work", "Lkotlin/Function1;", "Lkotlin/ExtensionFunctionType;", "mobile_freedomDebug"})
    public final class Transaction {
        @org.jetbrains.annotations.NotNull
        private final java.util.LinkedList<java.lang.String> revertCommands = null;
        
        public Transaction() {
            super();
        }
        
        @org.jetbrains.annotations.Nullable
        public final java.lang.Void exec(@org.jetbrains.annotations.NotNull
        java.lang.String command, @org.jetbrains.annotations.Nullable
        java.lang.String revert) {
            return null;
        }
        
        @org.jetbrains.annotations.NotNull
        public final hanson.xyz.vpnhotspotmod.root.RoutingCommands.ProcessResult execQuiet(@org.jetbrains.annotations.NotNull
        java.lang.String command, @org.jetbrains.annotations.Nullable
        java.lang.String revert) {
            return null;
        }
        
        public final void commit() {
        }
        
        public final void revert() {
        }
        
        @org.jetbrains.annotations.NotNull
        public final hanson.xyz.vpnhotspotmod.util.RootSession.Transaction safeguard(@org.jetbrains.annotations.NotNull
        kotlin.jvm.functions.Function1<? super hanson.xyz.vpnhotspotmod.util.RootSession.Transaction, kotlin.Unit> work) {
            return null;
        }
    }
}