cmd-sync-servers - v1.0.0
    Preparing search index...

    Interface Transport

    One connection to a server's remote root. Every path is a validated RemotePath relative to that root. Files move as streams; nothing reads a whole file into memory.

    interface Transport {
        chmod?(path: RemotePath, mode: number): Promise<void>;
        close(): Promise<void>;
        connect(signal?: AbortSignal): Promise<Capabilities>;
        get(path: RemotePath, to: Writable, signal?: AbortSignal): Promise<void>;
        list(dir: RemotePath, signal?: AbortSignal): Promise<RemoteEntry[]>;
        mkdir(path: RemotePath): Promise<void>;
        put(from: Readable, path: RemotePath, signal?: AbortSignal): Promise<void>;
        remove(path: RemotePath): Promise<void>;
        rename(from: RemotePath, to: RemotePath, overwrite: boolean): Promise<void>;
        setMtime?(path: RemotePath, mtimeMs: number): Promise<void>;
        stat(
            path: RemotePath,
            signal?: AbortSignal,
        ): Promise<RemoteEntry | undefined>;
    }

    Implemented by

    Index
    • Closes the connection. Safe to call more than once.

      Returns Promise<void>

    • Connects, signs in and checks the remote root, then reports what the server offers.

      Parameters

      • Optionalsignal: AbortSignal

      Returns Promise<Capabilities>

    • Streams the file at path into to.

      Parameters

      • path: RemotePath
      • to: Writable
      • Optionalsignal: AbortSignal

      Returns Promise<void>

    • Streams from into a file at path, replacing any file there.

      Parameters

      • from: Readable
      • path: RemotePath
      • Optionalsignal: AbortSignal

      Returns Promise<void>

    • Sets a file's modification time, when the protocol can.

      Parameters

      Returns Promise<void>