paperless-ngx
Version:
190 lines (186 loc) • 5.25 kB
TypeScript
// Generated by dts-bundle-generator v9.5.1
interface Document$1 {
id: number;
title: string;
content: string;
tags: number[];
document_type: number | null;
correspondent: number | null;
created: string;
created_date?: string;
modified: string;
added: string;
archive_serial_number?: string;
original_file_name: string;
archived_file_name: string | null;
notes: Note[];
page_count: number;
set_permissions?: Permissions$1;
custom_fields: CustomFieldValue[];
}
export interface Note {
id: number;
content: string;
created: string;
modified: string;
}
interface Permissions$1 {
view?: {
users?: number[];
groups?: number[];
};
change?: {
users?: number[];
groups?: number[];
};
}
export interface CustomFieldValue {
field: number;
value: string;
}
export interface Tag {
id: number;
name: string;
slug: string;
colour: string;
match: string;
matching_algorithm: string;
}
export interface Correspondent {
id: number;
name: string;
slug: string;
match: string;
matching_algorithm: string;
}
interface DocumentType$1 {
id: number;
name: string;
slug: string;
match: string;
matching_algorithm: string;
}
export interface CustomField {
id: number;
name: string;
slug: string;
model: string;
type: string;
required: boolean;
default: string;
choices: string[];
}
export interface User {
id: number;
username: string;
email: string;
first_name: string;
last_name: string;
is_active: boolean;
is_staff: boolean;
is_superuser: boolean;
groups: number[];
user_permissions: number[];
}
export interface Group {
id: number;
name: string;
permissions: number[];
}
export interface ShareLink {
id: number;
document: number;
slug: string;
created: string;
expires: string | null;
is_active: boolean;
}
export interface StoragePath {
id: number;
path: string;
description: string;
is_default: boolean;
}
export interface Workflow {
id: number;
name: string;
description: string;
enabled: boolean;
trigger: string;
conditions: WorkflowCondition[];
actions: WorkflowAction[];
}
export interface WorkflowCondition {
id: number;
workflow: number;
field: string;
operator: string;
value: string;
}
export interface WorkflowAction {
id: number;
workflow: number;
type: string;
parameters: Record<string, any>;
}
export declare class PaperlessClient {
private readonly baseUrl;
private readonly token;
constructor(baseUrl: string, token: string);
private request;
getDocuments(): Promise<Document$1[]>;
getDocument(id: number): Promise<Document$1>;
createDocument(document: Partial<Document$1>): Promise<Document$1>;
updateDocument(id: number, document: Partial<Document$1>): Promise<Document$1>;
deleteDocument(id: number): Promise<void>;
getTags(): Promise<Tag[]>;
getTag(id: number): Promise<Tag>;
createTag(tag: Partial<Tag>): Promise<Tag>;
updateTag(id: number, tag: Partial<Tag>): Promise<Tag>;
deleteTag(id: number): Promise<void>;
getCorrespondents(): Promise<Correspondent[]>;
getCorrespondent(id: number): Promise<Correspondent>;
createCorrespondent(correspondent: Partial<Correspondent>): Promise<Correspondent>;
updateCorrespondent(id: number, correspondent: Partial<Correspondent>): Promise<Correspondent>;
deleteCorrespondent(id: number): Promise<void>;
getDocumentTypes(): Promise<DocumentType$1[]>;
getDocumentType(id: number): Promise<DocumentType$1>;
createDocumentType(documentType: Partial<DocumentType$1>): Promise<DocumentType$1>;
updateDocumentType(id: number, documentType: Partial<DocumentType$1>): Promise<DocumentType$1>;
deleteDocumentType(id: number): Promise<void>;
getCustomFields(): Promise<CustomField[]>;
getCustomField(id: number): Promise<CustomField>;
createCustomField(customField: Partial<CustomField>): Promise<CustomField>;
updateCustomField(id: number, customField: Partial<CustomField>): Promise<CustomField>;
deleteCustomField(id: number): Promise<void>;
getUsers(): Promise<User[]>;
getUser(id: number): Promise<User>;
createUser(user: Partial<User>): Promise<User>;
updateUser(id: number, user: Partial<User>): Promise<User>;
deleteUser(id: number): Promise<void>;
getGroups(): Promise<Group[]>;
getGroup(id: number): Promise<Group>;
createGroup(group: Partial<Group>): Promise<Group>;
updateGroup(id: number, group: Partial<Group>): Promise<Group>;
deleteGroup(id: number): Promise<void>;
getShareLinks(): Promise<ShareLink[]>;
getShareLink(id: number): Promise<ShareLink>;
createShareLink(shareLink: Partial<ShareLink>): Promise<ShareLink>;
deleteShareLink(id: number): Promise<void>;
getStoragePaths(): Promise<StoragePath[]>;
getStoragePath(id: number): Promise<StoragePath>;
createStoragePath(storagePath: Partial<StoragePath>): Promise<StoragePath>;
updateStoragePath(id: number, storagePath: Partial<StoragePath>): Promise<StoragePath>;
deleteStoragePath(id: number): Promise<void>;
getWorkflows(): Promise<Workflow[]>;
getWorkflow(id: number): Promise<Workflow>;
createWorkflow(workflow: Partial<Workflow>): Promise<Workflow>;
updateWorkflow(id: number, workflow: Partial<Workflow>): Promise<Workflow>;
deleteWorkflow(id: number): Promise<void>;
}
export {
Document$1 as Document,
DocumentType$1 as DocumentType,
Permissions$1 as Permissions,
};
export {};