import { z } from 'zod';
/**
 * M100 Record Schema - Item/Product record
 * Fields 1450-1465 based on SHAAM 1.31 specification
 * Total record length: 294 characters
 */
export declare const M100Schema: z.ZodObject<{
    code: z.ZodLiteral<"M100">;
    recordNumber: z.ZodString;
    vatId: z.ZodString;
    universalItemCode: z.ZodDefault<z.ZodString>;
    supplierItemCode: z.ZodDefault<z.ZodString>;
    internalItemCode: z.ZodString;
    itemName: z.ZodString;
    classificationCode: z.ZodDefault<z.ZodString>;
    classificationDescription: z.ZodDefault<z.ZodString>;
    unitOfMeasure: z.ZodDefault<z.ZodString>;
    openingStock: z.ZodString;
    totalStockIn: z.ZodString;
    totalStockOut: z.ZodString;
    endPeriodCostNonBonded: z.ZodDefault<z.ZodString>;
    endPeriodCostBonded: z.ZodDefault<z.ZodString>;
    reserved: z.ZodDefault<z.ZodString>;
}, z.core.$strip>;
export type M100 = z.infer<typeof M100Schema>;
/**
 * Encodes a M100 record to fixed-width string format
 * Total line width: 294 characters + CRLF
 */
export declare function encodeM100(input: M100): string;
/**
 * Parses a fixed-width M100 record line back to object
 * Expected line length: 294 characters (excluding CRLF)
 */
export declare function parseM100(line: string): M100;
