iom-sdk 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,87 @@
1
+ import { ApiResponse, UUAddressDTO, UUID, QueryParams } from '@/types';
2
+ /**
3
+ * Get addresses with optional filtering
4
+ * This unified function handles all address retrieval scenarios including by UUID
5
+ *
6
+ * @param client - HTTP client instance
7
+ * @param params - Query parameters for filtering (uuid, softDeleted)
8
+ * @returns List of addresses matching the criteria, or single address if uuid is provided
9
+ */
10
+ export declare const getAddresses: (client?: {
11
+ get: <T>(url: string, params?: Record<string, any>) => Promise<ApiResponse<T>>;
12
+ getBinary: <T = ArrayBuffer>(url: string) => Promise<ApiResponse<T>>;
13
+ post: <T>(url: string, data?: any, config?: import("axios").AxiosRequestConfig) => Promise<ApiResponse<T>>;
14
+ postForm: <T>(url: string, formData: any) => Promise<ApiResponse<T>>;
15
+ put: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
16
+ delete: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
17
+ config: import("@/types").ClientConfig;
18
+ }) => (params?: QueryParams) => Promise<ApiResponse<UUAddressDTO[]>>;
19
+ /**
20
+ * Create a new address (generates UUID automatically)
21
+ *
22
+ * @param client - HTTP client instance
23
+ * @param address - The address data (without UUID)
24
+ * @returns The created address with generated UUID
25
+ */
26
+ export declare const createAddress: (client?: {
27
+ get: <T>(url: string, params?: Record<string, any>) => Promise<ApiResponse<T>>;
28
+ getBinary: <T = ArrayBuffer>(url: string) => Promise<ApiResponse<T>>;
29
+ post: <T>(url: string, data?: any, config?: import("axios").AxiosRequestConfig) => Promise<ApiResponse<T>>;
30
+ postForm: <T>(url: string, formData: any) => Promise<ApiResponse<T>>;
31
+ put: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
32
+ delete: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
33
+ config: import("@/types").ClientConfig;
34
+ }) => (address: Omit<UUAddressDTO, "uuid">) => Promise<ApiResponse<UUAddressDTO>>;
35
+ /**
36
+ * Update an existing address
37
+ *
38
+ * @param client - HTTP client instance
39
+ * @param address - The address to update (must include UUID)
40
+ * @returns The updated address
41
+ */
42
+ export declare const updateAddress: (client?: {
43
+ get: <T>(url: string, params?: Record<string, any>) => Promise<ApiResponse<T>>;
44
+ getBinary: <T = ArrayBuffer>(url: string) => Promise<ApiResponse<T>>;
45
+ post: <T>(url: string, data?: any, config?: import("axios").AxiosRequestConfig) => Promise<ApiResponse<T>>;
46
+ postForm: <T>(url: string, formData: any) => Promise<ApiResponse<T>>;
47
+ put: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
48
+ delete: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
49
+ config: import("@/types").ClientConfig;
50
+ }) => (address: UUAddressDTO) => Promise<ApiResponse<UUAddressDTO>>;
51
+ /**
52
+ * Create an address for an object and establish the relationship
53
+ * This is a convenience method that combines address creation with statement creation
54
+ *
55
+ * @param client - HTTP client instance
56
+ * @param objectUuid - UUID of the object to associate the address with
57
+ * @param addressData - Address data (without UUID, will be generated)
58
+ * @returns The created address and relationship statement
59
+ */
60
+ export declare const createAddressForObject: (client?: {
61
+ get: <T>(url: string, params?: Record<string, any>) => Promise<ApiResponse<T>>;
62
+ getBinary: <T = ArrayBuffer>(url: string) => Promise<ApiResponse<T>>;
63
+ post: <T>(url: string, data?: any, config?: import("axios").AxiosRequestConfig) => Promise<ApiResponse<T>>;
64
+ postForm: <T>(url: string, formData: any) => Promise<ApiResponse<T>>;
65
+ put: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
66
+ delete: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
67
+ config: import("@/types").ClientConfig;
68
+ }) => (objectUuid: string, addressData: Omit<UUAddressDTO, "uuid">) => Promise<ApiResponse<{
69
+ address: UUAddressDTO;
70
+ statement: any;
71
+ }>>;
72
+ /**
73
+ * Soft delete an address by UUID
74
+ *
75
+ * @param client - HTTP client instance
76
+ * @param uuid - UUID of the address to soft delete
77
+ * @returns The API response
78
+ */
79
+ export declare const softDeleteAddress: (client?: {
80
+ get: <T>(url: string, params?: Record<string, any>) => Promise<ApiResponse<T>>;
81
+ getBinary: <T = ArrayBuffer>(url: string) => Promise<ApiResponse<T>>;
82
+ post: <T>(url: string, data?: any, config?: import("axios").AxiosRequestConfig) => Promise<ApiResponse<T>>;
83
+ postForm: <T>(url: string, formData: any) => Promise<ApiResponse<T>>;
84
+ put: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
85
+ delete: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
86
+ config: import("@/types").ClientConfig;
87
+ }) => (uuid: UUID) => Promise<ApiResponse<any>>;
@@ -0,0 +1,69 @@
1
+ import { ApiResponse, AggregateFindDTO, AggregateEntity, PageAggregateEntity, AggregateCreateDTO, UUID } from '@/types';
2
+ /**
3
+ * Find any entity by UUID using the aggregate API
4
+ * Uses the new /api/Aggregate/{uuid} endpoint which provides rich aggregated data
5
+ *
6
+ * @param client - HTTP client instance
7
+ * @param uuid - UUID of the entity to find
8
+ * @returns The aggregate entity if found, null otherwise
9
+ */
10
+ export declare const findByUUID: (client?: {
11
+ get: <T>(url: string, params?: Record<string, any>) => Promise<ApiResponse<T>>;
12
+ getBinary: <T = ArrayBuffer>(url: string) => Promise<ApiResponse<T>>;
13
+ post: <T>(url: string, data?: any, config?: import("axios").AxiosRequestConfig) => Promise<ApiResponse<T>>;
14
+ postForm: <T>(url: string, formData: any) => Promise<ApiResponse<T>>;
15
+ put: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
16
+ delete: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
17
+ config: import("@/types").ClientConfig;
18
+ }) => (uuid: UUID) => Promise<ApiResponse<AggregateEntity[] | null>>;
19
+ /**
20
+ * Search aggregate entities with pagination and filtering
21
+ * Uses the new /api/Aggregate/search endpoint with POST method for advanced searching
22
+ *
23
+ * @param client - HTTP client instance
24
+ * @param params - Aggregate search parameters including the new searchBy field
25
+ * @returns Paginated list of aggregate entities
26
+ */
27
+ export declare const getAggregateEntities: (client?: {
28
+ get: <T>(url: string, params?: Record<string, any>) => Promise<ApiResponse<T>>;
29
+ getBinary: <T = ArrayBuffer>(url: string) => Promise<ApiResponse<T>>;
30
+ post: <T>(url: string, data?: any, config?: import("axios").AxiosRequestConfig) => Promise<ApiResponse<T>>;
31
+ postForm: <T>(url: string, formData: any) => Promise<ApiResponse<T>>;
32
+ put: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
33
+ delete: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
34
+ config: import("@/types").ClientConfig;
35
+ }) => (params?: AggregateFindDTO) => Promise<ApiResponse<PageAggregateEntity>>;
36
+ /**
37
+ * Create aggregate objects using the new API structure
38
+ * Uses POST /api/Aggregate endpoint with new AggregateCreateDTO structure
39
+ *
40
+ * @param client - HTTP client instance
41
+ * @param data - Aggregate creation data with user context
42
+ * @returns Created aggregate response
43
+ */
44
+ export declare const createAggregateObject: (client?: {
45
+ get: <T>(url: string, params?: Record<string, any>) => Promise<ApiResponse<T>>;
46
+ getBinary: <T = ArrayBuffer>(url: string) => Promise<ApiResponse<T>>;
47
+ post: <T>(url: string, data?: any, config?: import("axios").AxiosRequestConfig) => Promise<ApiResponse<T>>;
48
+ postForm: <T>(url: string, formData: any) => Promise<ApiResponse<T>>;
49
+ put: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
50
+ delete: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
51
+ config: import("@/types").ClientConfig;
52
+ }) => (data: AggregateCreateDTO) => Promise<ApiResponse<any | null>>;
53
+ /**
54
+ * Import multiple aggregate objects using the new API structure
55
+ * Uses POST /api/Aggregate/Import endpoint with new AggregateCreateDTO structure
56
+ *
57
+ * @param client - HTTP client instance
58
+ * @param data - Aggregate creation data with user context
59
+ * @returns Import response
60
+ */
61
+ export declare const importAggregateObjects: (client?: {
62
+ get: <T>(url: string, params?: Record<string, any>) => Promise<ApiResponse<T>>;
63
+ getBinary: <T = ArrayBuffer>(url: string) => Promise<ApiResponse<T>>;
64
+ post: <T>(url: string, data?: any, config?: import("axios").AxiosRequestConfig) => Promise<ApiResponse<T>>;
65
+ postForm: <T>(url: string, formData: any) => Promise<ApiResponse<T>>;
66
+ put: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
67
+ delete: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
68
+ config: import("@/types").ClientConfig;
69
+ }) => (data: AggregateCreateDTO) => Promise<ApiResponse<any | null>>;
@@ -0,0 +1,33 @@
1
+ import { ApiResponse, AuthResponse } from '@/types';
2
+ /**
3
+ * Authenticate with the base service using client certificate (mTLS)
4
+ * This will trigger the browser certificate selection popup
5
+ *
6
+ * @param client - HTTP client instance
7
+ * @returns Base service authentication data
8
+ */
9
+ export declare const requestBaseAuth: (client?: {
10
+ get: <T>(url: string, params?: Record<string, any>) => Promise<ApiResponse<T>>;
11
+ getBinary: <T = ArrayBuffer>(url: string) => Promise<ApiResponse<T>>;
12
+ post: <T>(url: string, data?: any, config?: import("axios").AxiosRequestConfig) => Promise<ApiResponse<T>>;
13
+ postForm: <T>(url: string, formData: any) => Promise<ApiResponse<T>>;
14
+ put: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
15
+ delete: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
16
+ config: import("@/types").ClientConfig;
17
+ }) => () => Promise<ApiResponse<AuthResponse | null>>;
18
+ /**
19
+ * Authenticate with the UUID service using client certificate (mTLS)
20
+ * This will trigger the browser certificate selection popup
21
+ *
22
+ * @param client - HTTP client instance
23
+ * @returns UUID service authentication data
24
+ */
25
+ export declare const requestUuidAuth: (client?: {
26
+ get: <T>(url: string, params?: Record<string, any>) => Promise<ApiResponse<T>>;
27
+ getBinary: <T = ArrayBuffer>(url: string) => Promise<ApiResponse<T>>;
28
+ post: <T>(url: string, data?: any, config?: import("axios").AxiosRequestConfig) => Promise<ApiResponse<T>>;
29
+ postForm: <T>(url: string, formData: any) => Promise<ApiResponse<T>>;
30
+ put: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
31
+ delete: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
32
+ config: import("@/types").ClientConfig;
33
+ }) => () => Promise<ApiResponse<AuthResponse | null>>;
@@ -0,0 +1,84 @@
1
+ import { ApiResponse, UUFileDTO, UUID, QueryParams } from '@/types';
2
+ /**
3
+ * Get files with optional filtering
4
+ * This unified function replaces getAllFiles, getOwnFiles, and getFileByUuid
5
+ *
6
+ * @param client - HTTP client instance
7
+ * @param params - Query parameters for filtering (uuid, softDeleted)
8
+ * @returns List of files matching the criteria, or single file if uuid is provided
9
+ */
10
+ export declare const getFiles: (client?: {
11
+ get: <T>(url: string, params?: Record<string, any>) => Promise<ApiResponse<T>>;
12
+ getBinary: <T = ArrayBuffer>(url: string) => Promise<ApiResponse<T>>;
13
+ post: <T>(url: string, data?: any, config?: import("axios").AxiosRequestConfig) => Promise<ApiResponse<T>>;
14
+ postForm: <T>(url: string, formData: any) => Promise<ApiResponse<T>>;
15
+ put: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
16
+ delete: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
17
+ config: import("@/types").ClientConfig;
18
+ }) => (params?: QueryParams) => Promise<ApiResponse<UUFileDTO[]>>;
19
+ /**
20
+ * Create or update a file
21
+ *
22
+ * @param client - HTTP client instance
23
+ * @param file - The file to create or update
24
+ * @returns The created or updated file
25
+ */
26
+ export declare const createOrUpdateFile: (client?: {
27
+ get: <T>(url: string, params?: Record<string, any>) => Promise<ApiResponse<T>>;
28
+ getBinary: <T = ArrayBuffer>(url: string) => Promise<ApiResponse<T>>;
29
+ post: <T>(url: string, data?: any, config?: import("axios").AxiosRequestConfig) => Promise<ApiResponse<T>>;
30
+ postForm: <T>(url: string, formData: any) => Promise<ApiResponse<T>>;
31
+ put: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
32
+ delete: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
33
+ config: import("@/types").ClientConfig;
34
+ }) => (file: UUFileDTO) => Promise<ApiResponse<UUFileDTO>>;
35
+ /**
36
+ * Soft delete a file
37
+ *
38
+ * @param client - HTTP client instance
39
+ * @param uuid - The UUID of the file to delete
40
+ * @returns The API response
41
+ */
42
+ export declare const softDeleteFile: (client?: {
43
+ get: <T>(url: string, params?: Record<string, any>) => Promise<ApiResponse<T>>;
44
+ getBinary: <T = ArrayBuffer>(url: string) => Promise<ApiResponse<T>>;
45
+ post: <T>(url: string, data?: any, config?: import("axios").AxiosRequestConfig) => Promise<ApiResponse<T>>;
46
+ postForm: <T>(url: string, formData: any) => Promise<ApiResponse<T>>;
47
+ put: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
48
+ delete: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
49
+ config: import("@/types").ClientConfig;
50
+ }) => (uuid: UUID) => Promise<ApiResponse<any>>;
51
+ /**
52
+ * Upload a file's binary content via multipart/form-data
53
+ *
54
+ * Swagger: POST /api/UUFile/upload?uuidFile={uuidFile}&uuidToAttach={uuidToAttach}
55
+ *
56
+ * @param client - HTTP client instance
57
+ * @param uuidFile - UUID of the file record
58
+ * @param uuidToAttach - UUID of the object/property/value to attach to
59
+ * @param file - Blob | File | Buffer to upload
60
+ * @param fieldName - Optional field name (defaults to 'file')
61
+ */
62
+ export declare const uploadFileBinary: (client?: {
63
+ get: <T>(url: string, params?: Record<string, any>) => Promise<ApiResponse<T>>;
64
+ getBinary: <T = ArrayBuffer>(url: string) => Promise<ApiResponse<T>>;
65
+ post: <T>(url: string, data?: any, config?: import("axios").AxiosRequestConfig) => Promise<ApiResponse<T>>;
66
+ postForm: <T>(url: string, formData: any) => Promise<ApiResponse<T>>;
67
+ put: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
68
+ delete: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
69
+ config: import("@/types").ClientConfig;
70
+ }) => (uuidFile: UUID, uuidToAttach: UUID, file: any, fieldName?: string) => Promise<ApiResponse<any>>;
71
+ /**
72
+ * Download a file's binary content
73
+ *
74
+ * Swagger: GET /api/UUFile/download/{uuid}
75
+ */
76
+ export declare const downloadFileBinary: (client?: {
77
+ get: <T>(url: string, params?: Record<string, any>) => Promise<ApiResponse<T>>;
78
+ getBinary: <T = ArrayBuffer>(url: string) => Promise<ApiResponse<T>>;
79
+ post: <T>(url: string, data?: any, config?: import("axios").AxiosRequestConfig) => Promise<ApiResponse<T>>;
80
+ postForm: <T>(url: string, formData: any) => Promise<ApiResponse<T>>;
81
+ put: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
82
+ delete: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
83
+ config: import("@/types").ClientConfig;
84
+ }) => (uuid: UUID) => Promise<ApiResponse<ArrayBuffer>>;
@@ -0,0 +1,9 @@
1
+ export * from './object-service';
2
+ export * from './statement-service';
3
+ export * from './property-service';
4
+ export * from './property-value-service';
5
+ export * from './file-service';
6
+ export * from './address-service';
7
+ export * from './uuid-service';
8
+ export * from './aggregate-service';
9
+ export * from './common-service';
@@ -0,0 +1,50 @@
1
+ import { ApiResponse, UUObjectDTO, UUID, QueryParams } from '@/types';
2
+ /**
3
+ * Get objects with optional filtering
4
+ * This unified function handles all object retrieval scenarios
5
+ *
6
+ * @param client - HTTP client instance
7
+ * @param params - Query parameters for filtering (uuid, softDeleted)
8
+ * @returns List of objects matching the criteria, or single object if uuid is provided
9
+ */
10
+ export declare const getObjects: (client?: {
11
+ get: <T>(url: string, params?: Record<string, any>) => Promise<ApiResponse<T>>;
12
+ getBinary: <T = ArrayBuffer>(url: string) => Promise<ApiResponse<T>>;
13
+ post: <T>(url: string, data?: any, config?: import("axios").AxiosRequestConfig) => Promise<ApiResponse<T>>;
14
+ postForm: <T>(url: string, formData: any) => Promise<ApiResponse<T>>;
15
+ put: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
16
+ delete: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
17
+ config: import("@/types").ClientConfig;
18
+ }) => (params?: QueryParams) => Promise<ApiResponse<UUObjectDTO[]>>;
19
+ /**
20
+ * Create or update an object
21
+ *
22
+ * @param client - HTTP client instance
23
+ * @param object - The object to create or update
24
+ * @returns The created or updated object
25
+ */
26
+ export declare const createOrUpdateObject: (client?: {
27
+ get: <T>(url: string, params?: Record<string, any>) => Promise<ApiResponse<T>>;
28
+ getBinary: <T = ArrayBuffer>(url: string) => Promise<ApiResponse<T>>;
29
+ post: <T>(url: string, data?: any, config?: import("axios").AxiosRequestConfig) => Promise<ApiResponse<T>>;
30
+ postForm: <T>(url: string, formData: any) => Promise<ApiResponse<T>>;
31
+ put: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
32
+ delete: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
33
+ config: import("@/types").ClientConfig;
34
+ }) => (object: UUObjectDTO) => Promise<ApiResponse<UUObjectDTO>>;
35
+ /**
36
+ * Soft delete an object
37
+ *
38
+ * @param client - HTTP client instance
39
+ * @param uuid - The UUID of the object to delete
40
+ * @returns The API response
41
+ */
42
+ export declare const softDeleteObject: (client?: {
43
+ get: <T>(url: string, params?: Record<string, any>) => Promise<ApiResponse<T>>;
44
+ getBinary: <T = ArrayBuffer>(url: string) => Promise<ApiResponse<T>>;
45
+ post: <T>(url: string, data?: any, config?: import("axios").AxiosRequestConfig) => Promise<ApiResponse<T>>;
46
+ postForm: <T>(url: string, formData: any) => Promise<ApiResponse<T>>;
47
+ put: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
48
+ delete: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
49
+ config: import("@/types").ClientConfig;
50
+ }) => (uuid: UUID) => Promise<ApiResponse<any>>;
@@ -0,0 +1,68 @@
1
+ import { ApiResponse, UUPropertyDTO, UUID, QueryParams } from '@/types';
2
+ /**
3
+ * Get properties with optional filtering
4
+ * This unified function handles all property retrieval scenarios
5
+ *
6
+ * @param client - HTTP client instance
7
+ * @param params - Query parameters for filtering (uuid, softDeleted)
8
+ * @returns List of properties matching the criteria, or single property if uuid is provided
9
+ */
10
+ export declare const getProperties: (client?: {
11
+ get: <T>(url: string, params?: Record<string, any>) => Promise<ApiResponse<T>>;
12
+ getBinary: <T = ArrayBuffer>(url: string) => Promise<ApiResponse<T>>;
13
+ post: <T>(url: string, data?: any, config?: import("axios").AxiosRequestConfig) => Promise<ApiResponse<T>>;
14
+ postForm: <T>(url: string, formData: any) => Promise<ApiResponse<T>>;
15
+ put: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
16
+ delete: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
17
+ config: import("@/types").ClientConfig;
18
+ }) => (params?: QueryParams) => Promise<ApiResponse<UUPropertyDTO[]>>;
19
+ /**
20
+ * Get a property by key (convenience function)
21
+ * Note: This filters client-side since the API doesn't support direct key lookup
22
+ *
23
+ * @param client - HTTP client instance
24
+ * @param key - The key of the property to get
25
+ * @param params - Query parameters
26
+ * @returns The requested property or null if not found
27
+ */
28
+ export declare const getPropertyByKey: (client?: {
29
+ get: <T>(url: string, params?: Record<string, any>) => Promise<ApiResponse<T>>;
30
+ getBinary: <T = ArrayBuffer>(url: string) => Promise<ApiResponse<T>>;
31
+ post: <T>(url: string, data?: any, config?: import("axios").AxiosRequestConfig) => Promise<ApiResponse<T>>;
32
+ postForm: <T>(url: string, formData: any) => Promise<ApiResponse<T>>;
33
+ put: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
34
+ delete: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
35
+ config: import("@/types").ClientConfig;
36
+ }) => (key: string, params?: QueryParams) => Promise<ApiResponse<UUPropertyDTO | null>>;
37
+ /**
38
+ * Create or update a property
39
+ *
40
+ * @param client - HTTP client instance
41
+ * @param property - The property to create or update
42
+ * @returns The created or updated property
43
+ */
44
+ export declare const createOrUpdateProperty: (client?: {
45
+ get: <T>(url: string, params?: Record<string, any>) => Promise<ApiResponse<T>>;
46
+ getBinary: <T = ArrayBuffer>(url: string) => Promise<ApiResponse<T>>;
47
+ post: <T>(url: string, data?: any, config?: import("axios").AxiosRequestConfig) => Promise<ApiResponse<T>>;
48
+ postForm: <T>(url: string, formData: any) => Promise<ApiResponse<T>>;
49
+ put: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
50
+ delete: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
51
+ config: import("@/types").ClientConfig;
52
+ }) => (property: UUPropertyDTO) => Promise<ApiResponse<UUPropertyDTO>>;
53
+ /**
54
+ * Soft delete a property
55
+ *
56
+ * @param client - HTTP client instance
57
+ * @param uuid - The UUID of the property to delete
58
+ * @returns The API response
59
+ */
60
+ export declare const softDeleteProperty: (client?: {
61
+ get: <T>(url: string, params?: Record<string, any>) => Promise<ApiResponse<T>>;
62
+ getBinary: <T = ArrayBuffer>(url: string) => Promise<ApiResponse<T>>;
63
+ post: <T>(url: string, data?: any, config?: import("axios").AxiosRequestConfig) => Promise<ApiResponse<T>>;
64
+ postForm: <T>(url: string, formData: any) => Promise<ApiResponse<T>>;
65
+ put: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
66
+ delete: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
67
+ config: import("@/types").ClientConfig;
68
+ }) => (uuid: UUID) => Promise<ApiResponse<any>>;
@@ -0,0 +1,50 @@
1
+ import { ApiResponse, UUPropertyValueDTO, UUID, QueryParams } from '@/types';
2
+ /**
3
+ * Get property values with optional filtering
4
+ * This unified function handles all property value retrieval scenarios
5
+ *
6
+ * @param client - HTTP client instance
7
+ * @param params - Query parameters for filtering (uuid, softDeleted)
8
+ * @returns List of property values matching the criteria, or single property value if uuid is provided
9
+ */
10
+ export declare const getPropertyValues: (client?: {
11
+ get: <T>(url: string, params?: Record<string, any>) => Promise<ApiResponse<T>>;
12
+ getBinary: <T = ArrayBuffer>(url: string) => Promise<ApiResponse<T>>;
13
+ post: <T>(url: string, data?: any, config?: import("axios").AxiosRequestConfig) => Promise<ApiResponse<T>>;
14
+ postForm: <T>(url: string, formData: any) => Promise<ApiResponse<T>>;
15
+ put: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
16
+ delete: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
17
+ config: import("@/types").ClientConfig;
18
+ }) => (params?: QueryParams) => Promise<ApiResponse<UUPropertyValueDTO[]>>;
19
+ /**
20
+ * Create or update a property value
21
+ *
22
+ * @param client - HTTP client instance
23
+ * @param propertyValue - The property value to create or update
24
+ * @returns The created or updated property value
25
+ */
26
+ export declare const createOrUpdatePropertyValue: (client?: {
27
+ get: <T>(url: string, params?: Record<string, any>) => Promise<ApiResponse<T>>;
28
+ getBinary: <T = ArrayBuffer>(url: string) => Promise<ApiResponse<T>>;
29
+ post: <T>(url: string, data?: any, config?: import("axios").AxiosRequestConfig) => Promise<ApiResponse<T>>;
30
+ postForm: <T>(url: string, formData: any) => Promise<ApiResponse<T>>;
31
+ put: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
32
+ delete: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
33
+ config: import("@/types").ClientConfig;
34
+ }) => (propertyValue: UUPropertyValueDTO) => Promise<ApiResponse<UUPropertyValueDTO>>;
35
+ /**
36
+ * Soft delete a property value
37
+ *
38
+ * @param client - HTTP client instance
39
+ * @param uuid - The UUID of the property value to delete
40
+ * @returns The API response
41
+ */
42
+ export declare const softDeletePropertyValue: (client?: {
43
+ get: <T>(url: string, params?: Record<string, any>) => Promise<ApiResponse<T>>;
44
+ getBinary: <T = ArrayBuffer>(url: string) => Promise<ApiResponse<T>>;
45
+ post: <T>(url: string, data?: any, config?: import("axios").AxiosRequestConfig) => Promise<ApiResponse<T>>;
46
+ postForm: <T>(url: string, formData: any) => Promise<ApiResponse<T>>;
47
+ put: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
48
+ delete: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
49
+ config: import("@/types").ClientConfig;
50
+ }) => (uuid: UUID) => Promise<ApiResponse<any>>;
@@ -0,0 +1,175 @@
1
+ import { ApiResponse, Predicate, UUStatementDTO, UUID, QueryParams, StatementQueryParams } from '@/types';
2
+ /**
3
+ * Get statements with optional filtering
4
+ * This unified function handles all statement retrieval scenarios
5
+ *
6
+ * @param client - HTTP client instance
7
+ * @param params - Statement query parameters (subject, predicate, object, softDeleted)
8
+ * @returns List of statements matching the criteria
9
+ */
10
+ export declare const getStatements: (client?: {
11
+ get: <T>(url: string, params?: Record<string, any>) => Promise<ApiResponse<T>>;
12
+ getBinary: <T = ArrayBuffer>(url: string) => Promise<ApiResponse<T>>;
13
+ post: <T>(url: string, data?: any, config?: import("axios").AxiosRequestConfig) => Promise<ApiResponse<T>>;
14
+ postForm: <T>(url: string, formData: any) => Promise<ApiResponse<T>>;
15
+ put: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
16
+ delete: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
17
+ config: import("@/types").ClientConfig;
18
+ }) => (params?: StatementQueryParams) => Promise<ApiResponse<UUStatementDTO[]>>;
19
+ /**
20
+ * Create or find statements
21
+ *
22
+ * @param client - HTTP client instance
23
+ * @param statements - Statements to create or find
24
+ * @returns Created or found statements
25
+ */
26
+ export declare const createOrFindStatements: (client?: {
27
+ get: <T>(url: string, params?: Record<string, any>) => Promise<ApiResponse<T>>;
28
+ getBinary: <T = ArrayBuffer>(url: string) => Promise<ApiResponse<T>>;
29
+ post: <T>(url: string, data?: any, config?: import("axios").AxiosRequestConfig) => Promise<ApiResponse<T>>;
30
+ postForm: <T>(url: string, formData: any) => Promise<ApiResponse<T>>;
31
+ put: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
32
+ delete: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
33
+ config: import("@/types").ClientConfig;
34
+ }) => (statements: UUStatementDTO[]) => Promise<ApiResponse<UUStatementDTO[]>>;
35
+ /**
36
+ * Create a single statement (convenience method)
37
+ *
38
+ * @param client - HTTP client instance
39
+ * @param statement - Statement to create
40
+ * @returns Created statement
41
+ */
42
+ export declare const createStatement: (client?: {
43
+ get: <T>(url: string, params?: Record<string, any>) => Promise<ApiResponse<T>>;
44
+ getBinary: <T = ArrayBuffer>(url: string) => Promise<ApiResponse<T>>;
45
+ post: <T>(url: string, data?: any, config?: import("axios").AxiosRequestConfig) => Promise<ApiResponse<T>>;
46
+ postForm: <T>(url: string, formData: any) => Promise<ApiResponse<T>>;
47
+ put: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
48
+ delete: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
49
+ config: import("@/types").ClientConfig;
50
+ }) => (statement: UUStatementDTO) => Promise<ApiResponse<UUStatementDTO>>;
51
+ /**
52
+ * Get statements by UUID and predicate
53
+ * This is now a convenience wrapper around getAllStatements
54
+ *
55
+ * @param client - HTTP client instance
56
+ * @param uuid - The UUID to find statements for (subject)
57
+ * @param predicate - The predicate to filter by
58
+ * @param params - Query parameters
59
+ * @returns Statements matching the criteria
60
+ */
61
+ export declare const getStatementsByUuidAndPredicate: (client?: {
62
+ get: <T>(url: string, params?: Record<string, any>) => Promise<ApiResponse<T>>;
63
+ getBinary: <T = ArrayBuffer>(url: string) => Promise<ApiResponse<T>>;
64
+ post: <T>(url: string, data?: any, config?: import("axios").AxiosRequestConfig) => Promise<ApiResponse<T>>;
65
+ postForm: <T>(url: string, formData: any) => Promise<ApiResponse<T>>;
66
+ put: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
67
+ delete: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
68
+ config: import("@/types").ClientConfig;
69
+ }) => (uuid: UUID, predicate: Predicate, params?: QueryParams) => Promise<ApiResponse<UUStatementDTO[]>>;
70
+ /**
71
+ * Soft delete a statement
72
+ * This performs a logical delete using the DELETE HTTP method
73
+ *
74
+ * @param client - HTTP client instance
75
+ * @param statement - Statement to soft delete
76
+ * @returns The API response
77
+ */
78
+ export declare const softDeleteStatement: (client?: {
79
+ get: <T>(url: string, params?: Record<string, any>) => Promise<ApiResponse<T>>;
80
+ getBinary: <T = ArrayBuffer>(url: string) => Promise<ApiResponse<T>>;
81
+ post: <T>(url: string, data?: any, config?: import("axios").AxiosRequestConfig) => Promise<ApiResponse<T>>;
82
+ postForm: <T>(url: string, formData: any) => Promise<ApiResponse<T>>;
83
+ put: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
84
+ delete: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
85
+ config: import("@/types").ClientConfig;
86
+ }) => (statement: UUStatementDTO | {
87
+ subject: UUID;
88
+ predicate: Predicate;
89
+ object: UUID;
90
+ }) => Promise<ApiResponse<any>>;
91
+ /**
92
+ * Find all children of a given UUID
93
+ *
94
+ * @param client - HTTP client instance
95
+ * @param parentUuid - The parent UUID
96
+ * @param params - Query parameters
97
+ * @returns Statements with parent-child relationship
98
+ */
99
+ export declare const findChildren: (client?: {
100
+ get: <T>(url: string, params?: Record<string, any>) => Promise<ApiResponse<T>>;
101
+ getBinary: <T = ArrayBuffer>(url: string) => Promise<ApiResponse<T>>;
102
+ post: <T>(url: string, data?: any, config?: import("axios").AxiosRequestConfig) => Promise<ApiResponse<T>>;
103
+ postForm: <T>(url: string, formData: any) => Promise<ApiResponse<T>>;
104
+ put: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
105
+ delete: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
106
+ config: import("@/types").ClientConfig;
107
+ }) => (parentUuid: UUID, params?: QueryParams) => Promise<ApiResponse<UUStatementDTO[]>>;
108
+ /**
109
+ * Find all parents of a given UUID
110
+ *
111
+ * @param client - HTTP client instance
112
+ * @param childUuid - The child UUID
113
+ * @param params - Query parameters
114
+ * @returns Statements with child-parent relationship
115
+ */
116
+ export declare const findParents: (client?: {
117
+ get: <T>(url: string, params?: Record<string, any>) => Promise<ApiResponse<T>>;
118
+ getBinary: <T = ArrayBuffer>(url: string) => Promise<ApiResponse<T>>;
119
+ post: <T>(url: string, data?: any, config?: import("axios").AxiosRequestConfig) => Promise<ApiResponse<T>>;
120
+ postForm: <T>(url: string, formData: any) => Promise<ApiResponse<T>>;
121
+ put: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
122
+ delete: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
123
+ config: import("@/types").ClientConfig;
124
+ }) => (childUuid: UUID, params?: QueryParams) => Promise<ApiResponse<UUStatementDTO[]>>;
125
+ /**
126
+ * Find all properties of an object
127
+ *
128
+ * @param client - HTTP client instance
129
+ * @param objectUuid - The object UUID
130
+ * @param params - Query parameters
131
+ * @returns Statements with object-property relationship
132
+ */
133
+ export declare const findProperties: (client?: {
134
+ get: <T>(url: string, params?: Record<string, any>) => Promise<ApiResponse<T>>;
135
+ getBinary: <T = ArrayBuffer>(url: string) => Promise<ApiResponse<T>>;
136
+ post: <T>(url: string, data?: any, config?: import("axios").AxiosRequestConfig) => Promise<ApiResponse<T>>;
137
+ postForm: <T>(url: string, formData: any) => Promise<ApiResponse<T>>;
138
+ put: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
139
+ delete: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
140
+ config: import("@/types").ClientConfig;
141
+ }) => (objectUuid: UUID, params?: QueryParams) => Promise<ApiResponse<UUStatementDTO[]>>;
142
+ /**
143
+ * Find all values of a property
144
+ *
145
+ * @param client - HTTP client instance
146
+ * @param propertyUuid - The property UUID
147
+ * @param params - Query parameters
148
+ * @returns Statements with property-value relationship
149
+ */
150
+ export declare const findPropertyValues: (client?: {
151
+ get: <T>(url: string, params?: Record<string, any>) => Promise<ApiResponse<T>>;
152
+ getBinary: <T = ArrayBuffer>(url: string) => Promise<ApiResponse<T>>;
153
+ post: <T>(url: string, data?: any, config?: import("axios").AxiosRequestConfig) => Promise<ApiResponse<T>>;
154
+ postForm: <T>(url: string, formData: any) => Promise<ApiResponse<T>>;
155
+ put: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
156
+ delete: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
157
+ config: import("@/types").ClientConfig;
158
+ }) => (propertyUuid: UUID, params?: QueryParams) => Promise<ApiResponse<UUStatementDTO[]>>;
159
+ /**
160
+ * Find all files attached to an object
161
+ *
162
+ * @param client - HTTP client instance
163
+ * @param objectUuid - The object UUID
164
+ * @param params - Query parameters
165
+ * @returns Statements with object-file relationship
166
+ */
167
+ export declare const findFiles: (client?: {
168
+ get: <T>(url: string, params?: Record<string, any>) => Promise<ApiResponse<T>>;
169
+ getBinary: <T = ArrayBuffer>(url: string) => Promise<ApiResponse<T>>;
170
+ post: <T>(url: string, data?: any, config?: import("axios").AxiosRequestConfig) => Promise<ApiResponse<T>>;
171
+ postForm: <T>(url: string, formData: any) => Promise<ApiResponse<T>>;
172
+ put: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
173
+ delete: <T>(url: string, data?: any) => Promise<ApiResponse<T>>;
174
+ config: import("@/types").ClientConfig;
175
+ }) => (objectUuid: UUID, params?: QueryParams) => Promise<ApiResponse<UUStatementDTO[]>>;