/** * Transmisor (CNBV Money Transmitters) Alerts Resource * * Extends MexAlertsResource with Transmisor-specific behavior: * - Accepts flattened CreateTransmisorAlertInput * - Returns MexTransmisorAlert models * - Nests Transmisor fields under scopeData.MX.cnbv.TRANSMISOR */ import type { AlertClientItemFilter, AlertItemFilter, AlertItemSort, AlertSort, AlertTransactionItemFilter, AtomicBatchResult, ClientSort, CreateAlertInput, CreateAlertItemInput, CreateTransmisorAlertInput, CreateTransmisorAlertItemInput, GenerateResult, ListOptions, PaginatedResponse, PartialBatchResult, TransactionSort, TransmisorAlertClientItemFilter, TransmisorAlertDefaultsInput, TransmisorAlertFilter, TransmisorAlertItemFilter, TransmisorAlertSort, TransmisorAlertTransactionItemFilter, TransmisorClientSort, TransmisorTransactionSort, UpdateAlertInput, UpdateAlertItemInput, UpdateTransmisorAlertInput, UpdateTransmisorAlertItemInput, UpsertResult, UpsertTransmisorAlertInput, ValidationResult } from "@artu-ai/shared"; import { ReportType } from "@artu-ai/shared"; import { type AlertClientItemData, type AlertData, type AlertItemData, type AlertTransactionItemData, MexTransmisorAlert, MexTransmisorAlertClientItem, MexTransmisorAlertItem, MexTransmisorAlertTransactionItem } from "../../../../models"; import { AlertItemsResource } from "../../../alert-items"; import { CNBVAlertsResource } from "../alerts"; export declare class TransmisorAlertsResource extends CNBVAlertsResource { create(data: CreateTransmisorAlertInput): 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: UpdateTransmisorAlertInput): Promise; list(options?: ListOptions & { crossScope?: boolean; }): Promise>; iterate(options?: { filter?: TransmisorAlertFilter; sort?: TransmisorAlertSort; pageSize?: number; crossScope?: boolean; }): AsyncGenerator; count(filter?: TransmisorAlertFilter, options?: { crossScope?: boolean; }): Promise; createMany(alerts: CreateTransmisorAlertInput[], options?: { atomic?: true; }): Promise>; createMany(alerts: CreateTransmisorAlertInput[], options: { atomic: false; }): Promise>; updateMany(updates: { id: string; data: UpdateTransmisorAlertInput; }[], options?: { atomic?: true; }): Promise>; updateMany(updates: { id: string; data: UpdateTransmisorAlertInput; }[], options: { atomic: false; }): Promise>; upsertByExternalId(data: UpsertTransmisorAlertInput): Promise>; addItem(alertId: string, data: CreateTransmisorAlertItemInput): Promise; getItem(alertId: string, itemId: string): Promise; updateItem(alertId: string, itemId: string, data: UpdateTransmisorAlertItemInput): Promise; listItems(alertId: string, options?: ListOptions): Promise>; protected applyScopeToItemFilter(filter?: TransmisorAlertItemFilter): AlertItemFilter | undefined; addItems(alertId: string, items: CreateTransmisorAlertItemInput[]): Promise<{ added: number; items: MexTransmisorAlertItem[]; }>; /** * Lists transactions linked to an alert with Transmisor-scoped filters/sorts. */ listTransactionItems(alertId: string, options?: ListOptions): Promise>; /** * Lists unique clients related to an alert with Transmisor-scoped filters/sorts. */ listClients(alertId: string, options?: ListOptions): Promise>; protected applyTransactionScopeToFilter(filter?: TransmisorAlertTransactionItemFilter): AlertTransactionItemFilter | undefined; protected applyClientScopeToFilter(filter?: TransmisorAlertClientItemFilter): AlertClientItemFilter | undefined; private buildAlertItemFilterWithHasErrors; protected createItemsResource(): AlertItemsResource | undefined; } | undefined; }>; validateReport(alertId: string, defaults?: TransmisorAlertDefaultsInput): Promise; generateReport(alertId: string, defaults?: TransmisorAlertDefaultsInput): Promise; protected applyScopeToSort(sort?: TransmisorAlertSort): AlertSort | undefined; /** * Transforms a flattened TransmisorTransactionSort to nested TransactionSort format. */ protected applyTransactionScopeToSort(sort?: TransmisorTransactionSort): TransactionSort | undefined; /** * Transforms a flattened TransmisorClientSort to nested ClientSort format. */ protected applyClientScopeToSort(sort?: TransmisorClientSort): ClientSort | undefined; protected transformToNested(data: CreateTransmisorAlertInput): CreateAlertInput; protected transformUpdateToNested(data: UpdateTransmisorAlertInput): UpdateAlertInput; protected instantiate(data: AlertData): MexTransmisorAlert; /** Materializes a raw payload into a {@link MexTransmisorAlert} (return type narrowed via the `instantiate` override). */ materialize(data: AlertData): MexTransmisorAlert; protected instantiateItem(data: AlertItemData): MexTransmisorAlertItem; protected instantiateTransactionItem(data: AlertTransactionItemData): MexTransmisorAlertTransactionItem; protected instantiateClientItem(data: AlertClientItemData): MexTransmisorAlertClientItem; protected transformItemToNested(data: CreateTransmisorAlertItemInput): CreateAlertItemInput; protected transformItemUpdateToNested(data: UpdateTransmisorAlertItemInput): UpdateAlertItemInput; /** * Transforms Transmisor defaults to nested API format for validate/generate. */ protected transformDefaultsToNested(alertId: string, defaults?: TransmisorAlertDefaultsInput): { alertId: string; reportType: ReportType; defaults?: unknown; }; }