import * as IShared from '../../../shared/interface'; import { StockMovement } from '../../../shared/entities/stock'; export type Entity = StockMovement; export declare const Route = "stock_movement"; export declare const UpperName = "StockMovement"; export declare const LowerName: string; export interface IFindByProviderResponse extends Omit { reference: string; } export type IFindByOwnerIdResponse = Omit; export declare const ExportFormatEnum: { csv: 'csv'; xml: 'xml'; }; export type IExportFormat = (typeof ExportFormatEnum)[keyof typeof ExportFormatEnum]; export declare const exportFormats: string[]; export declare const ExportVersionEnum: { v1_02: 'v1_02'; v2_01: 'v2_01'; }; export type IExportVersion = (typeof ExportVersionEnum)[keyof typeof ExportVersionEnum]; export declare const exportVersions: string[]; export interface IExportRequest { date: Date; format: IExportFormat; version: IExportVersion; token: string; } export interface IExportCsvResponse { productCategory: string; productCode: string; productDescription: string; productNumberCode: string; closingStockQuantity: number; unitOfMeasure: string; closingStockValue: number; } export interface IFindStockMovementPaginatedRequest extends IShared.IFindByOwnerIdRequest, IShared.IPaginationRequest { } export interface IRepository { findByProvider(selector: IShared.IFindByIdNumberRequest): Promise; findByOwnerId(selector: IShared.IFindByOwnerIdRequest): Promise; exportCsv(selector: IExportRequest): Promise; findStockMovementPaginated(selector: IFindStockMovementPaginatedRequest): Promise>; } export interface IController extends IRepository { findByOwnerId(selector: IShared.IFindByOwnerIdRequest): Promise; exportCsv(selector: IExportRequest): Promise; }