import { z } from 'zod';
/**
 * C100 Record Schema - Document header record
 * Fields 1200-1235 based on SHAAM 1.31 specification
 * Total record length: 445 characters
 */
export declare const C100Schema: z.ZodObject<{
    code: z.ZodLiteral<"C100">;
    recordNumber: z.ZodString;
    vatId: z.ZodString;
    documentType: z.ZodEnum<{
        100: "100";
        200: "200";
        210: "210";
        300: "300";
        305: "305";
        320: "320";
        325: "325";
        330: "330";
        340: "340";
        400: "400";
        410: "410";
        420: "420";
        430: "430";
        500: "500";
        600: "600";
        700: "700";
        710: "710";
    }>;
    documentId: z.ZodString;
    documentIssueDate: z.ZodString;
    documentIssueTime: z.ZodDefault<z.ZodString>;
    customerName: z.ZodDefault<z.ZodString>;
    customerStreet: z.ZodDefault<z.ZodString>;
    customerHouseNumber: z.ZodDefault<z.ZodString>;
    customerCity: z.ZodDefault<z.ZodString>;
    customerPostCode: z.ZodDefault<z.ZodString>;
    customerCountry: z.ZodDefault<z.ZodString>;
    customerCountryCode: z.ZodDefault<z.ZodString>;
    customerPhone: z.ZodDefault<z.ZodString>;
    customerVatId: z.ZodDefault<z.ZodString>;
    documentValueDate: z.ZodDefault<z.ZodString>;
    foreignCurrencyAmount: z.ZodDefault<z.ZodString>;
    currencyCode: z.ZodDefault<z.ZodString>;
    amountBeforeDiscount: z.ZodDefault<z.ZodString>;
    documentDiscount: z.ZodDefault<z.ZodString>;
    amountAfterDiscountExcludingVat: z.ZodDefault<z.ZodString>;
    vatAmount: z.ZodDefault<z.ZodString>;
    amountIncludingVat: z.ZodDefault<z.ZodString>;
    withholdingTaxAmount: z.ZodDefault<z.ZodString>;
    customerKey: z.ZodDefault<z.ZodString>;
    matchingField: z.ZodDefault<z.ZodString>;
    cancelledAttribute1: z.ZodDefault<z.ZodString>;
    cancelledDocument: z.ZodDefault<z.ZodString>;
    cancelledAttribute2: z.ZodDefault<z.ZodString>;
    documentDate: z.ZodDefault<z.ZodString>;
    branchKey: z.ZodDefault<z.ZodString>;
    cancelledAttribute3: z.ZodDefault<z.ZodString>;
    actionExecutor: z.ZodDefault<z.ZodString>;
    lineConnectingField: z.ZodDefault<z.ZodString>;
    reserved: z.ZodDefault<z.ZodString>;
}, z.core.$strip>;
export type C100 = z.infer<typeof C100Schema>;
/**
 * Encodes a C100 record to fixed-width string format
 * Total line width: 445 characters + CRLF
 */
export declare function encodeC100(input: C100): string;
/**
 * Parses a fixed-width C100 record line back to object
 * Expected line length: 445 characters (excluding CRLF)
 */
/**
 * Parses a fixed-width C100 record line back to object
 * Expected line length: 445 characters (excluding CRLF)
 */
export declare function parseC100(line: string): C100;
