import * as z from "zod";
import { Result as SafeParseResult } from "../../types/fp.js";
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
export type AssetId = {
    /**
     * The asset ID to analyze
     */
    assetId: string;
};
export type Uri = {
    /**
     * The URI of the asset to analyze
     */
    uri: string;
};
export type Source = Uri | AssetId;
/** @internal */
export declare const AssetId$inboundSchema: z.ZodType<AssetId, z.ZodTypeDef, unknown>;
/** @internal */
export type AssetId$Outbound = {
    asset_id: string;
};
/** @internal */
export declare const AssetId$outboundSchema: z.ZodType<AssetId$Outbound, z.ZodTypeDef, AssetId>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace AssetId$ {
    /** @deprecated use `AssetId$inboundSchema` instead. */
    const inboundSchema: z.ZodType<AssetId, z.ZodTypeDef, unknown>;
    /** @deprecated use `AssetId$outboundSchema` instead. */
    const outboundSchema: z.ZodType<AssetId$Outbound, z.ZodTypeDef, AssetId>;
    /** @deprecated use `AssetId$Outbound` instead. */
    type Outbound = AssetId$Outbound;
}
export declare function assetIdToJSON(assetId: AssetId): string;
export declare function assetIdFromJSON(jsonString: string): SafeParseResult<AssetId, SDKValidationError>;
/** @internal */
export declare const Uri$inboundSchema: z.ZodType<Uri, z.ZodTypeDef, unknown>;
/** @internal */
export type Uri$Outbound = {
    uri: string;
};
/** @internal */
export declare const Uri$outboundSchema: z.ZodType<Uri$Outbound, z.ZodTypeDef, Uri>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace Uri$ {
    /** @deprecated use `Uri$inboundSchema` instead. */
    const inboundSchema: z.ZodType<Uri, z.ZodTypeDef, unknown>;
    /** @deprecated use `Uri$outboundSchema` instead. */
    const outboundSchema: z.ZodType<Uri$Outbound, z.ZodTypeDef, Uri>;
    /** @deprecated use `Uri$Outbound` instead. */
    type Outbound = Uri$Outbound;
}
export declare function uriToJSON(uri: Uri): string;
export declare function uriFromJSON(jsonString: string): SafeParseResult<Uri, SDKValidationError>;
/** @internal */
export declare const Source$inboundSchema: z.ZodType<Source, z.ZodTypeDef, unknown>;
/** @internal */
export type Source$Outbound = Uri$Outbound | AssetId$Outbound;
/** @internal */
export declare const Source$outboundSchema: z.ZodType<Source$Outbound, z.ZodTypeDef, Source>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace Source$ {
    /** @deprecated use `Source$inboundSchema` instead. */
    const inboundSchema: z.ZodType<Source, z.ZodTypeDef, unknown>;
    /** @deprecated use `Source$outboundSchema` instead. */
    const outboundSchema: z.ZodType<Source$Outbound, z.ZodTypeDef, Source>;
    /** @deprecated use `Source$Outbound` instead. */
    type Outbound = Source$Outbound;
}
export declare function sourceToJSON(source: Source): string;
export declare function sourceFromJSON(jsonString: string): SafeParseResult<Source, SDKValidationError>;
//# sourceMappingURL=source.d.ts.map