UNPKG

skysync-cli

Version:

SkySync Command Line Interface

158 lines (157 loc) 4.63 kB
import { Job, ItemInspectionPolicy } from './jobs'; import { Connection, Account, PlatformItem, SecurityIdentifier } from './connections'; import { IEntityIdentifier } from './base'; import { AuditCategory } from './auditCategories'; export interface TransferJob extends Job { transfer?: TransferOptions; } export interface AttributeImportTextSource { target?: TransferTarget; } export interface AttributeImportSource { text?: AttributeImportTextSource; delimiter?: string; } export interface MetadataImportOptions { schema?: string; source?: AttributeImportSource; } export interface PermissionsOptions { import?: PermissionsImportOptions; policy?: PermissionsPreservationPolicy; failures?: PermissionsFailurePolicy; } export interface PermissionsImportOptions { source?: AttributeImportSource; } export declare enum PermissionsPreservationPolicy { None = "none", AddOnly = "add", ReconcileDifferences = "diff" } export declare enum PermissionsFailurePolicy { FailOnExceptions = "exceptions", FailOnDeny = "deny", Fail = "all", None = "none" } export interface TransferTarget { item?: PlatformItem; path?: string; } export interface TransferPath { connection?: Connection; impersonate_as?: Account; target?: TransferTarget; } export declare enum ConflictResolutionPolicy { Copy = "copy", PreferLatest = "latest", PreferSource = "source", PreferDestination = "destination", Failure = "failure" } export declare enum DeletePropagationPolicy { IgnoreBoth = "ignore_both", IgnoreSource = "ignore_source", IgnoreDestination = "ignore_destination", Mirror = "mirror" } export declare enum TransferType { Synchronize = "sync", Publish = "publish", Move = "move", Migrate = "migrate", Copy = "copy", Taxonomy = "taxonomy" } export declare enum RenditionSelectionMethod { Rendition = "rendition", Original = "original" } export interface TransferOptions { transfer_type?: TransferType; source?: TransferPath; destination?: TransferPath; conflict_resolution?: ConflictResolutionPolicy; delete_propagation?: DeletePropagationPolicy; metadata_import?: MetadataImportOptions; permissions?: PermissionsOptions; item_inspection_policy?: ItemInspectionPolicy; item_inspection_policy_next?: ItemInspectionPolicy; rendition?: RenditionSelectionMethod; segment_truncate?: boolean; encode_invalid_characters?: boolean; } export interface TransferItem extends IEntityIdentifier<number> { parent_id?: number; source?: TransferPlatformItem; destination?: TransferPlatformItem; audit_category?: AuditCategory; retried?: number; status?: string; processing?: string[]; source_to_destination?: boolean; transferred_on?: number; root?: boolean; type?: 'container' | 'item'; } export interface TransferPlatformItem extends IEntityIdentifier<string> { name?: string; caption?: string; path?: string; ext?: string; mime_type?: string; file_type?: string; bytes?: number; version?: string; hash?: string; etag?: string; created_on?: number; modified_on?: number; } export interface TransferAuditEntry extends IEntityIdentifier<number> { job_id?: string; execution_id?: number; target?: TransferItem; from_source?: boolean; to_source?: boolean; from_destination?: boolean; to_destination?: boolean; bytes?: number; version?: string; hash?: string; level?: string; type?: string; message?: string; recorded_on?: number; } export interface TransferSecurityMapping extends IEntityIdentifier<string> { source?: SecurityIdentifier; destination?: SecurityIdentifier; resolution?: string; message?: string; } export declare enum AccessRights { None = "none", Read = "read", Write = "write", Append = "append", Delete = "delete", ReadPermissions = "read_permissions", WritePermissions = "write_permissions", ReadWrite = "read_write", FullPermissions = "full_permissions", FullControl = "full" } export declare enum AccessControlType { Allow = "allow", Deny = "deny" } export interface TransferPermission extends IEntityIdentifier<number> { security_map?: TransferSecurityMapping; target?: TransferItem; rights?: AccessRights; access?: AccessControlType; audit_trail: string; }