export interface AutotaskClientConfigOld { apiUser: string; apiSecret: string; integrationCode: string; apiBaseUrl?: string; apiVersion?: string; } export type AutotaskQueryOperator = "eq" | "noteq" | "gt" | "gte" | "lt" | "lte" | "beginsWith" | "endsWith" | "contains" | "exist" | "notExist" | "in" | "notIn"; export type AutotaskQueryFilter = AutotaskSimpleFilter | AutotaskFilterGroup; export declare function isAutotaskSimpleFilter(filter: AutotaskQueryFilter): filter is AutotaskSimpleFilter; export declare function isAutotaskFilterGroup(filter: AutotaskQueryFilter): filter is AutotaskFilterGroup; export interface AutotaskSimpleFilter { field: string; op: AutotaskQueryOperator; value: any; udf?: boolean; filterType?: 'simple'; items?: never; } export type LogicalOperator = 'and' | 'or'; export interface AutotaskFilterGroup { op: LogicalOperator; items: AutotaskQueryFilter[]; filterType?: 'group'; } export interface AutotaskQueryOptions { filter?: AutotaskQueryFilter[]; fields?: string[]; include?: IncludeClause[]; maxRecords?: number; includeTotalCount?: boolean; sdkPageSize?: number; continuationToken?: string; pageRequest?: "next" | "prev"; } export interface IncludeClause { path: string; select?: string[]; } export interface RelationshipConfig { foreignEntity: AllAutotaskEntityNames; localKey: string; foreignKey: string; type: "to-one" | "to-many"; propertyName?: string; } export interface RelationshipConfigMap { [entityName: string]: { [relationshipPath: string]: RelationshipConfig; }; } export interface SdkQueryResponse { items: T[]; pageDetails: { countOnPage: number; requestedCount: number; prevPageUrl: string | null; nextPageUrl: string | null; totalItemsMatchingFilter?: number; }; errors?: AutotaskErrorItem[]; } export interface AutotaskErrorItem { message: string; entityType?: AllAutotaskEntityNames; entityId?: number | string | null; relationshipPath?: string; } export interface AutotaskApiSimpleFilterDef { field: string; op: AutotaskQueryOperator; value: any; udf?: boolean; } export interface AutotaskApiFilterGroupDef { op: LogicalOperator; items: AutotaskApiQueryFilter[]; } export type AutotaskApiQueryFilter = AutotaskApiSimpleFilterDef | AutotaskApiFilterGroupDef; export interface AutotaskApiQueryRequestBody { filter: AutotaskApiQueryFilter[]; IncludeFields?: string[]; maxRecords?: number; } export interface AutotaskErrorResponse { errors: AutotaskErrorItem[]; } export interface AutotaskApiPagedResponse { items: T[]; pageDetails?: { count: number; requestCount: number; prevPageUrl: string | null; nextPageUrl: string | null; }; errors?: AutotaskErrorItem[]; } export interface AutotaskApiCountResponse { queryCount: number; errors?: AutotaskErrorItem[]; } export interface SdkClientPagedResponse { items: T[]; pageSize: number; currentPage: number; continuationToken: string | null; hasNextPage: boolean; hasPreviousPage: boolean; totalItemsAvailable?: number; totalPages?: number; errors?: AutotaskErrorItem[]; } /** * Defines the structure of the payload encoded within the SDK's continuationToken. * This is internal to the SDK and allows it to resume pagination. */ export interface SdkContinuationTokenPayload { /** URL for the next page from Autotask API, to be used if pageRequest is 'next'. */ apiNextPageUrl: string | null; /** URL for the previous page from Autotask API, to be used if pageRequest is 'prev'. */ apiPrevPageUrl: string | null; /** The SDK page number that the response *which generated this token* represented. */ sdkPageNumberForThisResponse: number; /** The sdkPageSize used for this paginated series. */ originalSdkPageSize: number; /** Total items matching filter, if includeTotalCount was true for the initial query. */ totalItemsFromApi?: number; /** Original filter, kept for context, e.g., if total count needs re-fetching or for debugging. */ originalFilter?: AutotaskQueryFilter[]; /** The maxRecords value used for API calls (should align with originalSdkPageSize). */ apiMaxRecordsUsed: number; } import type { AllAutotaskEntityNames, AutotaskEntityTypeMap } from "../autotask-types/index.js"; export interface SdkProgressData { itemsThisPage: AutotaskEntityTypeMap[E][]; totalItemsFetchedSoFar: number; currentPageNumber: number; totalKnownItems?: number; totalPages?: number; } /** * Represents the comprehensive paged response from the SDK for query operations. */ //# sourceMappingURL=general.d.ts.map