import { z } from 'zod';
/**
 * B110 Record Schema - Account record
 * Fields 1400-1424 based on SHAAM 1.31 specification table
 */
export declare const B110Schema: z.ZodObject<{
    code: z.ZodLiteral<"B110">;
    recordNumber: z.ZodNumber;
    vatId: z.ZodString;
    accountKey: z.ZodString;
    accountName: z.ZodOptional<z.ZodString>;
    trialBalanceCode: z.ZodString;
    trialBalanceCodeDescription: z.ZodOptional<z.ZodString>;
    customerSupplierAddressStreet: z.ZodOptional<z.ZodString>;
    customerSupplierAddressHouseNumber: z.ZodOptional<z.ZodString>;
    customerSupplierAddressCity: z.ZodOptional<z.ZodString>;
    customerSupplierAddressZip: z.ZodOptional<z.ZodString>;
    customerSupplierAddressCountry: z.ZodOptional<z.ZodString>;
    countryCode: z.ZodOptional<z.ZodEnum<{
        ID: "ID";
        AT: "AT";
        AU: "AU";
        UA: "UA";
        AE: "AE";
        IT: "IT";
        IE: "IE";
        EE: "EE";
        AR: "AR";
        US: "US";
        BG: "BG";
        BE: "BE";
        BR: "BR";
        GB: "GB";
        DE: "DE";
        DK: "DK";
        ZA: "ZA";
        KR: "KR";
        IN: "IN";
        NL: "NL";
        HK: "HK";
        HU: "HU";
        PH: "PH";
        VN: "VN";
        TR: "TR";
        GR: "GR";
        JP: "JP";
        IL: "IL";
        LU: "LU";
        LV: "LV";
        LT: "LT";
        MY: "MY";
        MT: "MT";
        EG: "EG";
        MX: "MX";
        NO: "NO";
        NZ: "NZ";
        CN: "CN";
        SG: "SG";
        SI: "SI";
        SK: "SK";
        SA: "SA";
        ES: "ES";
        PL: "PL";
        PT: "PT";
        FI: "FI";
        CL: "CL";
        CZ: "CZ";
        FR: "FR";
        CA: "CA";
        CY: "CY";
        HR: "HR";
        RO: "RO";
        RU: "RU";
        SE: "SE";
        CH: "CH";
        TH: "TH";
    }>>;
    parentAccountKey: z.ZodOptional<z.ZodString>;
    accountOpeningBalance: z.ZodNumber;
    totalDebits: z.ZodOptional<z.ZodNumber>;
    totalCredits: z.ZodOptional<z.ZodNumber>;
    accountingClassificationCode: z.ZodOptional<z.ZodNumber>;
    supplierCustomerTaxId: z.ZodOptional<z.ZodString>;
    branchId: z.ZodOptional<z.ZodString>;
    openingBalanceForeignCurrency: z.ZodOptional<z.ZodNumber>;
    foreignCurrencyCode: z.ZodOptional<z.ZodEnum<{
        AUD: "AUD";
        CAD: "CAD";
        EUR: "EUR";
        GBP: "GBP";
        ILS: "ILS";
        JPY: "JPY";
        SEK: "SEK";
        USD: "USD";
        CHF: "CHF";
        CNY: "CNY";
        RUB: "RUB";
        BRL: "BRL";
        HKD: "HKD";
        SGD: "SGD";
        THB: "THB";
        MXN: "MXN";
        TRY: "TRY";
        NZD: "NZD";
        NOK: "NOK";
        DKK: "DKK";
        KRW: "KRW";
        INR: "INR";
        PLN: "PLN";
        ZAR: "ZAR";
        CZK: "CZK";
        HUF: "HUF";
    }>>;
    reserved: z.ZodOptional<z.ZodString>;
}, z.core.$strip>;
export type B110 = z.infer<typeof B110Schema>;
/**
 * Encodes a B110 record to fixed-width string format
 * Total line width: 376 characters + CRLF
 */
export declare function encodeB110(input: B110): string;
/**
 * Parses a fixed-width B110 record line back to object
 * Expected line length: 376 characters (excluding CRLF)
 */
export declare function parseB110(line: string): B110;
