File size: 1,327 Bytes
8c741f6
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
/// <reference types="node" />
import { Writable, Readable } from "stream";
import { FTPContext, FTPResponse } from "./FtpContext";
import { ProgressTracker, ProgressType } from "./ProgressTracker";
export type UploadCommand = "STOR" | "APPE";
/**
 * Prepare a data socket using passive mode over IPv6.
 */
export declare function enterPassiveModeIPv6(ftp: FTPContext): Promise<FTPResponse>;
/**
 * Parse an EPSV response. Returns only the port as in EPSV the host of the control connection is used.
 */
export declare function parseEpsvResponse(message: string): number;
/**
 * Prepare a data socket using passive mode over IPv4.
 */
export declare function enterPassiveModeIPv4(ftp: FTPContext): Promise<FTPResponse>;
/**
 * Parse a PASV response.
 */
export declare function parsePasvResponse(message: string): {
    host: string;
    port: number;
};
export declare function connectForPassiveTransfer(host: string, port: number, ftp: FTPContext): Promise<void>;
export interface TransferConfig {
    command: string;
    remotePath: string;
    type: ProgressType;
    ftp: FTPContext;
    tracker: ProgressTracker;
}
export declare function uploadFrom(source: Readable, config: TransferConfig): Promise<FTPResponse>;
export declare function downloadTo(destination: Writable, config: TransferConfig): Promise<FTPResponse>;