/** * AV (Actividad Vulnerable) Alerts Resource * * Extends MexAlertsResource with AV-scoped behavior: * - Uses AV-level alert schemas (mesReportado at actividadVulnerable level) * - Alert items use alertDescription and amendment at actividadVulnerable level * - Returns MexAVAlert models */ import type { AlertClientItemFilter, AlertItemFilter, AlertItemSort, AlertSort, AlertTransactionItemFilter, AtomicBatchResult, ClientSort, CreateAlertInput, CreateAlertItemInput, CreateAVAlertInput, CreateAVAlertItemInput, GenerateResult, ListOptions, MexAlertFilter, MexAlertSort, MexClientSort, MexTransactionSort, PaginatedResponse, PartialBatchResult, TransactionSort, UpdateAlertInput, UpdateAlertItemInput, UpdateAVAlertInput, UpdateAVAlertItemInput, UpsertAVAlertInput, UpsertResult, ValidationResult } from "@artu-ai/shared"; import { z } from "zod"; import { type AlertClientItemData, type AlertData, type AlertItemData, type AlertTransactionItemData, MexAVAlert, MexAVAlertClientItem, MexAVAlertItem, MexAVAlertTransactionItem } from "../../../models"; import { AlertItemsResource } from "../../alert-items"; import { MexAlertsResource } from "../alerts"; declare const avDefaultsInputSchema: z.ZodObject<{ rfc: z.ZodCoercedString; collegiateEntityCode: z.ZodOptional; exempt: z.ZodDefault; priority: z.ZodDefault>; alertDescription: z.ZodOptional; }, z.core.$strip>; export type AVAlertDefaultsInput = z.infer; /** * AV (Actividad Vulnerable) scoped alerts resource. * * Uses AV-level alert schemas where mesReportado is stored at * scopeData.MX.actividadVulnerable level (not under a subcategory). * * @example * ```typescript * const avSdk = new ComplianceSDK({ * apiKey, * environment: "test", * scope: "MX:AV", * }); * * const alert = await avSdk.alerts.create({ * mesReportado: "202401", * }); * * // Returns MexAVAlert * console.log(alert.mesReportado); * ``` */ export declare class AVAlertsResource extends MexAlertsResource { create(data: CreateAVAlertInput): Promise; retrieve(id: string, opts?: { crossScope?: boolean; }): Promise; retrieveByMetadata(key: string, value: string, opts?: { crossScope?: boolean; }): Promise; retrieveByExternalId(externalId: string, opts?: { crossScope?: boolean; }): Promise; update(id: string, data: UpdateAVAlertInput): Promise; list(options?: ListOptions & { crossScope?: boolean; }): Promise>; iterate(options?: { filter?: MexAlertFilter; sort?: MexAlertSort; pageSize?: number; crossScope?: boolean; }): AsyncGenerator; count(filter?: MexAlertFilter, options?: { crossScope?: boolean; }): Promise; createMany(alerts: CreateAVAlertInput[], options?: { atomic?: true; }): Promise>; createMany(alerts: CreateAVAlertInput[], options: { atomic: false; }): Promise>; updateMany(updates: { id: string; data: UpdateAVAlertInput; }[], options?: { atomic?: true; }): Promise>; updateMany(updates: { id: string; data: UpdateAVAlertInput; }[], options: { atomic: false; }): Promise>; upsertByExternalId(data: UpsertAVAlertInput): Promise>; upsertManyByExternalId(alerts: UpsertAVAlertInput[], options?: { atomic?: true; }): Promise>>; upsertManyByExternalId(alerts: UpsertAVAlertInput[], options: { atomic: false; }): Promise>>; addItem(alertId: string, data: CreateAVAlertItemInput): Promise; getItem(alertId: string, itemId: string): Promise; updateItem(alertId: string, itemId: string, data: UpdateAVAlertItemInput): Promise; listItems(alertId: string, options?: ListOptions): Promise>; addItems(alertId: string, items: CreateAVAlertItemInput[]): Promise<{ added: number; items: MexAVAlertItem[]; }>; listTransactionItems(alertId: string, options?: ListOptions): Promise>; listClients(alertId: string, options?: ListOptions): Promise>; protected createItemsResource(): AlertItemsResource | undefined; } | undefined; } | undefined; } | undefined; }>; /** * Validates an AV alert. * * AV-scoped validation uses base AV defaults (rfc, priority, etc.) * without activity-specific fields. */ validateReport(alertId: string, defaults?: AVAlertDefaultsInput): Promise; /** * Generates XML for an AV alert. */ generateReport(alertId: string, defaults?: AVAlertDefaultsInput): Promise; protected applyScopeToSort(sort?: MexAlertSort): AlertSort | undefined; protected applyTransactionScopeToSort(sort?: MexTransactionSort): TransactionSort | undefined; protected applyClientScopeToSort(sort?: MexClientSort): ClientSort | undefined; protected transformToNested(data: CreateAVAlertInput): CreateAlertInput; protected transformUpdateToNested(data: UpdateAVAlertInput): UpdateAlertInput; protected instantiate(data: AlertData): MexAVAlert; /** Materializes a raw payload into a {@link MexAVAlert} (return type narrowed via the `instantiate` override). */ materialize(data: AlertData): MexAVAlert; protected instantiateItem(data: AlertItemData): MexAVAlertItem; protected instantiateTransactionItem(data: AlertTransactionItemData): MexAVAlertTransactionItem; protected instantiateClientItem(data: AlertClientItemData): MexAVAlertClientItem; protected transformItemToNested(data: CreateAVAlertItemInput): CreateAlertItemInput; protected transformItemUpdateToNested(data: UpdateAVAlertItemInput): UpdateAlertItemInput; /** * Transforms AV defaults to nested API format for validate/generate. */ protected transformAvDefaultsToNested(alertId: string, defaults?: AVAlertDefaultsInput): { alertId: string; defaults?: unknown; }; } export {};