48 lines
1.0 KiB
Swift
48 lines
1.0 KiB
Swift
// Copyright 2024-present 650 Industries. All rights reserved.
|
|
|
|
import ExpoModulesCore
|
|
|
|
struct CreateOptions: Record {
|
|
@Field var intermediates: Bool = false
|
|
@Field var overwrite: Bool = false
|
|
@Field var idempotent: Bool = false
|
|
}
|
|
|
|
struct DownloadOptions: Record {
|
|
@Field var headers: [String: String]?
|
|
@Field var idempotent: Bool = false
|
|
}
|
|
|
|
struct FileInfo: Record {
|
|
@Field var exists: Bool
|
|
@Field var uri: String?
|
|
@Field var md5: String?
|
|
@Field var size: Int64?
|
|
@Field var modificationTime: Int64?
|
|
@Field var creationTime: Int64?
|
|
}
|
|
|
|
struct PathInfo: Record {
|
|
@Field var exists: Bool
|
|
@Field var isDirectory: Bool?
|
|
}
|
|
|
|
struct DirectoryInfo: Record {
|
|
@Field var exists: Bool
|
|
@Field var uri: String?
|
|
@Field var files: [String]?
|
|
@Field var size: Int64?
|
|
@Field var modificationTime: Int64?
|
|
@Field var creationTime: Int64?
|
|
}
|
|
|
|
enum WriteEncoding: String, Enumerable {
|
|
case utf8
|
|
case base64
|
|
}
|
|
|
|
struct WriteOptions: Record {
|
|
@Field var encoding: WriteEncoding?
|
|
@Field var append: Bool = false
|
|
}
|