import * as z from "zod";
import { Result as SafeParseResult } from "../../types/fp.js";
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
export type Template = {
    /**
     * Date of creation
     */
    createdAt?: Date | null | undefined;
    /**
     * Unique identifier
     */
    id?: string | null | undefined;
    name?: string | null | undefined;
    /**
     * Provider's unique identifier
     */
    remoteId?: string | null | undefined;
    tags?: Array<string> | null | undefined;
    /**
     * Date of last update
     */
    updatedAt?: Date | null | undefined;
};
/** @internal */
export declare const Template$inboundSchema: z.ZodType<Template, z.ZodTypeDef, unknown>;
/** @internal */
export type Template$Outbound = {
    created_at?: string | null | undefined;
    id?: string | null | undefined;
    name?: string | null | undefined;
    remote_id?: string | null | undefined;
    tags?: Array<string> | null | undefined;
    updated_at?: string | null | undefined;
};
/** @internal */
export declare const Template$outboundSchema: z.ZodType<Template$Outbound, z.ZodTypeDef, Template>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace Template$ {
    /** @deprecated use `Template$inboundSchema` instead. */
    const inboundSchema: z.ZodType<Template, z.ZodTypeDef, unknown>;
    /** @deprecated use `Template$outboundSchema` instead. */
    const outboundSchema: z.ZodType<Template$Outbound, z.ZodTypeDef, Template>;
    /** @deprecated use `Template$Outbound` instead. */
    type Outbound = Template$Outbound;
}
export declare function templateToJSON(template: Template): string;
export declare function templateFromJSON(jsonString: string): SafeParseResult<Template, SDKValidationError>;
//# sourceMappingURL=template.d.ts.map