import { z } from "zod";
declare const _default: z.ZodObject<{
    schemaVersion: z.ZodString;
    serviceName: z.ZodString;
    description: z.ZodString;
    version: z.ZodString;
    capabilities: z.ZodArray<z.ZodString, "many">;
    communication: z.ZodObject<{
        endpoints: z.ZodArray<z.ZodObject<{
            url: z.ZodString;
            type: z.ZodOptional<z.ZodString>;
            authentication: z.ZodOptional<z.ZodBoolean>;
            description: z.ZodOptional<z.ZodString>;
            metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
            protocols: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
            additionalProperties: z.ZodOptional<z.ZodAny>;
        }, "strip", z.ZodTypeAny, {
            url: string;
            description?: string | undefined;
            type?: string | undefined;
            authentication?: boolean | undefined;
            metadata?: Record<string, any> | undefined;
            protocols?: string[] | undefined;
            additionalProperties?: any;
        }, {
            url: string;
            description?: string | undefined;
            type?: string | undefined;
            authentication?: boolean | undefined;
            metadata?: Record<string, any> | undefined;
            protocols?: string[] | undefined;
            additionalProperties?: any;
        }>, "many">;
        custom: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
    }, "strip", z.ZodTypeAny, {
        endpoints: {
            url: string;
            description?: string | undefined;
            type?: string | undefined;
            authentication?: boolean | undefined;
            metadata?: Record<string, any> | undefined;
            protocols?: string[] | undefined;
            additionalProperties?: any;
        }[];
        custom?: Record<string, any> | undefined;
    }, {
        endpoints: {
            url: string;
            description?: string | undefined;
            type?: string | undefined;
            authentication?: boolean | undefined;
            metadata?: Record<string, any> | undefined;
            protocols?: string[] | undefined;
            additionalProperties?: any;
        }[];
        custom?: Record<string, any> | undefined;
    }>;
    tags: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
    license: z.ZodOptional<z.ZodString>;
    registrationDate: z.ZodOptional<z.ZodString>;
    metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
    billing: z.ZodOptional<z.ZodObject<{
        walletAddress: z.ZodOptional<z.ZodString>;
        network: z.ZodOptional<z.ZodString>;
        currency: z.ZodOptional<z.ZodString>;
        paymentMethods: z.ZodOptional<z.ZodArray<z.ZodEnum<["ETH", "ERC20", "FIAT", "OTHER"]>, "many">>;
        customBillingInfo: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
    }, "strip", z.ZodAny, z.objectOutputType<{
        walletAddress: z.ZodOptional<z.ZodString>;
        network: z.ZodOptional<z.ZodString>;
        currency: z.ZodOptional<z.ZodString>;
        paymentMethods: z.ZodOptional<z.ZodArray<z.ZodEnum<["ETH", "ERC20", "FIAT", "OTHER"]>, "many">>;
        customBillingInfo: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
    }, z.ZodAny, "strip">, z.objectInputType<{
        walletAddress: z.ZodOptional<z.ZodString>;
        network: z.ZodOptional<z.ZodString>;
        currency: z.ZodOptional<z.ZodString>;
        paymentMethods: z.ZodOptional<z.ZodArray<z.ZodEnum<["ETH", "ERC20", "FIAT", "OTHER"]>, "many">>;
        customBillingInfo: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
    }, z.ZodAny, "strip">>>;
    publicKey: z.ZodOptional<z.ZodIntersection<z.ZodObject<{
        kty: z.ZodEnum<["RSA", "EC"]>;
        kid: z.ZodOptional<z.ZodString>;
        alg: z.ZodOptional<z.ZodString>;
    }, "strip", z.ZodTypeAny, {
        kty: "RSA" | "EC";
        kid?: string | undefined;
        alg?: string | undefined;
    }, {
        kty: "RSA" | "EC";
        kid?: string | undefined;
        alg?: string | undefined;
    }>, z.ZodEffects<z.ZodAny, any, any>>>;
}, "strip", z.ZodAny, z.objectOutputType<{
    schemaVersion: z.ZodString;
    serviceName: z.ZodString;
    description: z.ZodString;
    version: z.ZodString;
    capabilities: z.ZodArray<z.ZodString, "many">;
    communication: z.ZodObject<{
        endpoints: z.ZodArray<z.ZodObject<{
            url: z.ZodString;
            type: z.ZodOptional<z.ZodString>;
            authentication: z.ZodOptional<z.ZodBoolean>;
            description: z.ZodOptional<z.ZodString>;
            metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
            protocols: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
            additionalProperties: z.ZodOptional<z.ZodAny>;
        }, "strip", z.ZodTypeAny, {
            url: string;
            description?: string | undefined;
            type?: string | undefined;
            authentication?: boolean | undefined;
            metadata?: Record<string, any> | undefined;
            protocols?: string[] | undefined;
            additionalProperties?: any;
        }, {
            url: string;
            description?: string | undefined;
            type?: string | undefined;
            authentication?: boolean | undefined;
            metadata?: Record<string, any> | undefined;
            protocols?: string[] | undefined;
            additionalProperties?: any;
        }>, "many">;
        custom: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
    }, "strip", z.ZodTypeAny, {
        endpoints: {
            url: string;
            description?: string | undefined;
            type?: string | undefined;
            authentication?: boolean | undefined;
            metadata?: Record<string, any> | undefined;
            protocols?: string[] | undefined;
            additionalProperties?: any;
        }[];
        custom?: Record<string, any> | undefined;
    }, {
        endpoints: {
            url: string;
            description?: string | undefined;
            type?: string | undefined;
            authentication?: boolean | undefined;
            metadata?: Record<string, any> | undefined;
            protocols?: string[] | undefined;
            additionalProperties?: any;
        }[];
        custom?: Record<string, any> | undefined;
    }>;
    tags: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
    license: z.ZodOptional<z.ZodString>;
    registrationDate: z.ZodOptional<z.ZodString>;
    metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
    billing: z.ZodOptional<z.ZodObject<{
        walletAddress: z.ZodOptional<z.ZodString>;
        network: z.ZodOptional<z.ZodString>;
        currency: z.ZodOptional<z.ZodString>;
        paymentMethods: z.ZodOptional<z.ZodArray<z.ZodEnum<["ETH", "ERC20", "FIAT", "OTHER"]>, "many">>;
        customBillingInfo: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
    }, "strip", z.ZodAny, z.objectOutputType<{
        walletAddress: z.ZodOptional<z.ZodString>;
        network: z.ZodOptional<z.ZodString>;
        currency: z.ZodOptional<z.ZodString>;
        paymentMethods: z.ZodOptional<z.ZodArray<z.ZodEnum<["ETH", "ERC20", "FIAT", "OTHER"]>, "many">>;
        customBillingInfo: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
    }, z.ZodAny, "strip">, z.objectInputType<{
        walletAddress: z.ZodOptional<z.ZodString>;
        network: z.ZodOptional<z.ZodString>;
        currency: z.ZodOptional<z.ZodString>;
        paymentMethods: z.ZodOptional<z.ZodArray<z.ZodEnum<["ETH", "ERC20", "FIAT", "OTHER"]>, "many">>;
        customBillingInfo: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
    }, z.ZodAny, "strip">>>;
    publicKey: z.ZodOptional<z.ZodIntersection<z.ZodObject<{
        kty: z.ZodEnum<["RSA", "EC"]>;
        kid: z.ZodOptional<z.ZodString>;
        alg: z.ZodOptional<z.ZodString>;
    }, "strip", z.ZodTypeAny, {
        kty: "RSA" | "EC";
        kid?: string | undefined;
        alg?: string | undefined;
    }, {
        kty: "RSA" | "EC";
        kid?: string | undefined;
        alg?: string | undefined;
    }>, z.ZodEffects<z.ZodAny, any, any>>>;
}, z.ZodAny, "strip">, z.objectInputType<{
    schemaVersion: z.ZodString;
    serviceName: z.ZodString;
    description: z.ZodString;
    version: z.ZodString;
    capabilities: z.ZodArray<z.ZodString, "many">;
    communication: z.ZodObject<{
        endpoints: z.ZodArray<z.ZodObject<{
            url: z.ZodString;
            type: z.ZodOptional<z.ZodString>;
            authentication: z.ZodOptional<z.ZodBoolean>;
            description: z.ZodOptional<z.ZodString>;
            metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
            protocols: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
            additionalProperties: z.ZodOptional<z.ZodAny>;
        }, "strip", z.ZodTypeAny, {
            url: string;
            description?: string | undefined;
            type?: string | undefined;
            authentication?: boolean | undefined;
            metadata?: Record<string, any> | undefined;
            protocols?: string[] | undefined;
            additionalProperties?: any;
        }, {
            url: string;
            description?: string | undefined;
            type?: string | undefined;
            authentication?: boolean | undefined;
            metadata?: Record<string, any> | undefined;
            protocols?: string[] | undefined;
            additionalProperties?: any;
        }>, "many">;
        custom: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
    }, "strip", z.ZodTypeAny, {
        endpoints: {
            url: string;
            description?: string | undefined;
            type?: string | undefined;
            authentication?: boolean | undefined;
            metadata?: Record<string, any> | undefined;
            protocols?: string[] | undefined;
            additionalProperties?: any;
        }[];
        custom?: Record<string, any> | undefined;
    }, {
        endpoints: {
            url: string;
            description?: string | undefined;
            type?: string | undefined;
            authentication?: boolean | undefined;
            metadata?: Record<string, any> | undefined;
            protocols?: string[] | undefined;
            additionalProperties?: any;
        }[];
        custom?: Record<string, any> | undefined;
    }>;
    tags: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
    license: z.ZodOptional<z.ZodString>;
    registrationDate: z.ZodOptional<z.ZodString>;
    metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
    billing: z.ZodOptional<z.ZodObject<{
        walletAddress: z.ZodOptional<z.ZodString>;
        network: z.ZodOptional<z.ZodString>;
        currency: z.ZodOptional<z.ZodString>;
        paymentMethods: z.ZodOptional<z.ZodArray<z.ZodEnum<["ETH", "ERC20", "FIAT", "OTHER"]>, "many">>;
        customBillingInfo: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
    }, "strip", z.ZodAny, z.objectOutputType<{
        walletAddress: z.ZodOptional<z.ZodString>;
        network: z.ZodOptional<z.ZodString>;
        currency: z.ZodOptional<z.ZodString>;
        paymentMethods: z.ZodOptional<z.ZodArray<z.ZodEnum<["ETH", "ERC20", "FIAT", "OTHER"]>, "many">>;
        customBillingInfo: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
    }, z.ZodAny, "strip">, z.objectInputType<{
        walletAddress: z.ZodOptional<z.ZodString>;
        network: z.ZodOptional<z.ZodString>;
        currency: z.ZodOptional<z.ZodString>;
        paymentMethods: z.ZodOptional<z.ZodArray<z.ZodEnum<["ETH", "ERC20", "FIAT", "OTHER"]>, "many">>;
        customBillingInfo: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
    }, z.ZodAny, "strip">>>;
    publicKey: z.ZodOptional<z.ZodIntersection<z.ZodObject<{
        kty: z.ZodEnum<["RSA", "EC"]>;
        kid: z.ZodOptional<z.ZodString>;
        alg: z.ZodOptional<z.ZodString>;
    }, "strip", z.ZodTypeAny, {
        kty: "RSA" | "EC";
        kid?: string | undefined;
        alg?: string | undefined;
    }, {
        kty: "RSA" | "EC";
        kid?: string | undefined;
        alg?: string | undefined;
    }>, z.ZodEffects<z.ZodAny, any, any>>>;
}, z.ZodAny, "strip">>;
export default _default;
