import { z } from 'zod';
export declare const DidMetadataValidator: z.ZodObject<{
    '@context': z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>>>;
    alsoKnownAs: z.ZodOptional<z.ZodOptional<z.ZodString>>;
    controller: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString>]>>>;
    verificationMethod: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
        '@context': z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>>>;
        id: z.ZodString;
        type: z.ZodString;
        controller: z.ZodString;
        publicKeyJwk: z.ZodOptional<z.ZodObject<{
            kty: z.ZodString;
            crv: z.ZodString;
            x: z.ZodString;
            y: z.ZodOptional<z.ZodString>;
            n: z.ZodOptional<z.ZodString>;
            d: z.ZodOptional<z.ZodString>;
        }, z.core.$strip>>;
        publicKeyBase58: z.ZodOptional<z.ZodString>;
        publicKeyMultibase: z.ZodOptional<z.ZodString>;
        blockChainAccountId: z.ZodOptional<z.ZodString>;
    }, z.core.$catchall<z.ZodAny>>]>>>>;
    authentication: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
        '@context': z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>>>;
        id: z.ZodString;
        type: z.ZodString;
        controller: z.ZodString;
        publicKeyJwk: z.ZodOptional<z.ZodObject<{
            kty: z.ZodString;
            crv: z.ZodString;
            x: z.ZodString;
            y: z.ZodOptional<z.ZodString>;
            n: z.ZodOptional<z.ZodString>;
            d: z.ZodOptional<z.ZodString>;
        }, z.core.$strip>>;
        publicKeyBase58: z.ZodOptional<z.ZodString>;
        publicKeyMultibase: z.ZodOptional<z.ZodString>;
        blockChainAccountId: z.ZodOptional<z.ZodString>;
    }, z.core.$catchall<z.ZodAny>>]>>>>;
    assertionMethod: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
        '@context': z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>>>;
        id: z.ZodString;
        type: z.ZodString;
        controller: z.ZodString;
        publicKeyJwk: z.ZodOptional<z.ZodObject<{
            kty: z.ZodString;
            crv: z.ZodString;
            x: z.ZodString;
            y: z.ZodOptional<z.ZodString>;
            n: z.ZodOptional<z.ZodString>;
            d: z.ZodOptional<z.ZodString>;
        }, z.core.$strip>>;
        publicKeyBase58: z.ZodOptional<z.ZodString>;
        publicKeyMultibase: z.ZodOptional<z.ZodString>;
        blockChainAccountId: z.ZodOptional<z.ZodString>;
    }, z.core.$catchall<z.ZodAny>>]>>>>;
    keyAgreement: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
        '@context': z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>>>;
        id: z.ZodString;
        type: z.ZodString;
        controller: z.ZodString;
        publicKeyJwk: z.ZodOptional<z.ZodObject<{
            kty: z.ZodString;
            crv: z.ZodString;
            x: z.ZodString;
            y: z.ZodOptional<z.ZodString>;
            n: z.ZodOptional<z.ZodString>;
            d: z.ZodOptional<z.ZodString>;
        }, z.core.$strip>>;
        publicKeyBase58: z.ZodOptional<z.ZodString>;
        publicKeyMultibase: z.ZodOptional<z.ZodString>;
        blockChainAccountId: z.ZodOptional<z.ZodString>;
    }, z.core.$catchall<z.ZodAny>>]>>>>;
    capabilityInvocation: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
        '@context': z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>>>;
        id: z.ZodString;
        type: z.ZodString;
        controller: z.ZodString;
        publicKeyJwk: z.ZodOptional<z.ZodObject<{
            kty: z.ZodString;
            crv: z.ZodString;
            x: z.ZodString;
            y: z.ZodOptional<z.ZodString>;
            n: z.ZodOptional<z.ZodString>;
            d: z.ZodOptional<z.ZodString>;
        }, z.core.$strip>>;
        publicKeyBase58: z.ZodOptional<z.ZodString>;
        publicKeyMultibase: z.ZodOptional<z.ZodString>;
        blockChainAccountId: z.ZodOptional<z.ZodString>;
    }, z.core.$catchall<z.ZodAny>>]>>>>;
    capabilityDelegation: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
        '@context': z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>>>;
        id: z.ZodString;
        type: z.ZodString;
        controller: z.ZodString;
        publicKeyJwk: z.ZodOptional<z.ZodObject<{
            kty: z.ZodString;
            crv: z.ZodString;
            x: z.ZodString;
            y: z.ZodOptional<z.ZodString>;
            n: z.ZodOptional<z.ZodString>;
            d: z.ZodOptional<z.ZodString>;
        }, z.core.$strip>>;
        publicKeyBase58: z.ZodOptional<z.ZodString>;
        publicKeyMultibase: z.ZodOptional<z.ZodString>;
        blockChainAccountId: z.ZodOptional<z.ZodString>;
    }, z.core.$catchall<z.ZodAny>>]>>>>;
    publicKey: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
        '@context': z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodRecord<z.ZodString, z.ZodAny>]>>>;
        id: z.ZodString;
        type: z.ZodString;
        controller: z.ZodString;
        publicKeyJwk: z.ZodOptional<z.ZodObject<{
            kty: z.ZodString;
            crv: z.ZodString;
            x: z.ZodString;
            y: z.ZodOptional<z.ZodString>;
            n: z.ZodOptional<z.ZodString>;
            d: z.ZodOptional<z.ZodString>;
        }, z.core.$strip>>;
        publicKeyBase58: z.ZodOptional<z.ZodString>;
        publicKeyMultibase: z.ZodOptional<z.ZodString>;
        blockChainAccountId: z.ZodOptional<z.ZodString>;
    }, z.core.$catchall<z.ZodAny>>]>>>>;
    service: z.ZodOptional<z.ZodOptional<z.ZodArray<z.ZodObject<{
        id: z.ZodString;
        type: z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString>]>;
        serviceEndpoint: z.ZodUnion<[z.ZodAny, z.ZodArray<z.ZodAny>]>;
    }, z.core.$catchall<z.ZodAny>>>>>;
    proof: z.ZodOptional<z.ZodOptional<z.ZodUnion<[z.ZodObject<{
        type: z.ZodString;
        created: z.ZodString;
        challenge: z.ZodOptional<z.ZodString>;
        domain: z.ZodOptional<z.ZodString>;
        nonce: z.ZodOptional<z.ZodString>;
        proofPurpose: z.ZodString;
        verificationMethod: z.ZodString;
        jws: z.ZodOptional<z.ZodString>;
    }, z.core.$catchall<z.ZodAny>>, z.ZodArray<z.ZodObject<{
        type: z.ZodString;
        created: z.ZodString;
        challenge: z.ZodOptional<z.ZodString>;
        domain: z.ZodOptional<z.ZodString>;
        nonce: z.ZodOptional<z.ZodString>;
        proofPurpose: z.ZodString;
        verificationMethod: z.ZodString;
        jws: z.ZodOptional<z.ZodString>;
    }, z.core.$catchall<z.ZodAny>>>]>>>;
    id: z.ZodString;
}, z.core.$catchall<z.ZodAny>>;
export type DidMetadataType = z.infer<typeof DidMetadataValidator>;
export declare const FlatDidMetadataValidator: z.ZodObject<{
    id: z.ZodString;
}, z.core.$catchall<z.ZodAny>>;
export type FlatDidMetadataType = z.infer<typeof FlatDidMetadataValidator>;
//# sourceMappingURL=did-metadata.d.ts.map