@spotable/attio-sdk
Version:
Client for Attio REST API
67 lines (63 loc) • 1.73 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.generateEntryTypes = generateEntryTypes;
const fs_1 = require("../../helpers/fs");
const logger_1 = require("../../helpers/logger");
const fileHeader_1 = require("./fileHeader");
const FILE_NAME = "entry.ts";
function generateEntryTypes(outputDir) {
logger_1.default.debug(`Generating entry types file: ${FILE_NAME}`);
const content = `${(0, fileHeader_1.generateFileHeader)(FILE_NAME)}
import { Actor } from './systemDataTypes';
export interface AttioEntry {
id: {
workspace_id: string;
list_id: string;
entry_id: string;
};
parent_record_id: string;
parent_object: string;
created_at: string;
entry_values: Record<string, Array<{
active_from: string;
active_until: string | null;
created_by_actor: Actor;
value?: any;
status?: {
id: {
workspace_id: string;
object_id: string;
attribute_id: string;
status_id: string;
};
title: string;
is_archived: boolean;
target_time_in_status: number | null;
celebration_enabled: boolean;
};
referenced_actor_id?: string;
referenced_actor_type?: string;
attribute_type: string;
}>>;
}
export interface EntryQueryParams {
filter?: Record<string, any>;
sorts?: Array<{
direction: 'asc' | 'desc';
attribute: string;
field?: string;
}>;
limit?: number;
offset?: number;
}
export interface CreateEntryInput {
parent_record_id: string;
values?: Record<string, any>;
}
export interface UpdateEntryInput {
values?: Record<string, any>;
}
`;
(0, fs_1.writeGeneratedFile)(outputDir, FILE_NAME, content);
}
//# sourceMappingURL=entryTypes.js.map