import * as z from "zod";
import { OpenEnum } from "../../types/enums.js";
export type Category4 = {};
export type CategorySourceValue = Category4 | string | number | boolean | Array<any>;
export declare enum CategoryValue {
    Primary = "primary",
    Secondary = "secondary"
}
export type CategoryValueOpen = OpenEnum<typeof CategoryValue>;
/**
 * The hierarchal level of the category
 */
export type Level = {
    sourceValue?: Category4 | string | number | boolean | Array<any> | null | undefined;
    value?: CategoryValueOpen | null | undefined;
};
export type Category = {
    /**
     * Whether the category is active and therefore available for use
     */
    active?: boolean | null | undefined;
    /**
     * The ID associated with this category
     */
    id?: string | null | undefined;
    /**
     * The hierarchal level of the category
     */
    level?: Level | null | undefined;
    /**
     * The name associated with this category
     */
    name?: string | null | undefined;
    /**
     * Provider's unique identifier
     */
    remoteId?: string | null | undefined;
    /**
     * Custom Unified Fields configured in your StackOne project
     */
    unifiedCustomFields?: {
        [k: string]: any;
    } | null | undefined;
};
/** @internal */
export declare const Category4$inboundSchema: z.ZodType<Category4, z.ZodTypeDef, unknown>;
/** @internal */
export type Category4$Outbound = {};
/** @internal */
export declare const Category4$outboundSchema: z.ZodType<Category4$Outbound, z.ZodTypeDef, Category4>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace Category4$ {
    /** @deprecated use `Category4$inboundSchema` instead. */
    const inboundSchema: z.ZodType<Category4, z.ZodTypeDef, unknown>;
    /** @deprecated use `Category4$outboundSchema` instead. */
    const outboundSchema: z.ZodType<Category4$Outbound, z.ZodTypeDef, Category4>;
    /** @deprecated use `Category4$Outbound` instead. */
    type Outbound = Category4$Outbound;
}
/** @internal */
export declare const CategorySourceValue$inboundSchema: z.ZodType<CategorySourceValue, z.ZodTypeDef, unknown>;
/** @internal */
export type CategorySourceValue$Outbound = Category4$Outbound | string | number | boolean | Array<any>;
/** @internal */
export declare const CategorySourceValue$outboundSchema: z.ZodType<CategorySourceValue$Outbound, z.ZodTypeDef, CategorySourceValue>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace CategorySourceValue$ {
    /** @deprecated use `CategorySourceValue$inboundSchema` instead. */
    const inboundSchema: z.ZodType<CategorySourceValue, z.ZodTypeDef, unknown>;
    /** @deprecated use `CategorySourceValue$outboundSchema` instead. */
    const outboundSchema: z.ZodType<CategorySourceValue$Outbound, z.ZodTypeDef, CategorySourceValue>;
    /** @deprecated use `CategorySourceValue$Outbound` instead. */
    type Outbound = CategorySourceValue$Outbound;
}
/** @internal */
export declare const CategoryValue$inboundSchema: z.ZodType<CategoryValueOpen, z.ZodTypeDef, unknown>;
/** @internal */
export declare const CategoryValue$outboundSchema: z.ZodType<CategoryValueOpen, z.ZodTypeDef, CategoryValueOpen>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace CategoryValue$ {
    /** @deprecated use `CategoryValue$inboundSchema` instead. */
    const inboundSchema: z.ZodType<CategoryValueOpen, z.ZodTypeDef, unknown>;
    /** @deprecated use `CategoryValue$outboundSchema` instead. */
    const outboundSchema: z.ZodType<CategoryValueOpen, z.ZodTypeDef, CategoryValueOpen>;
}
/** @internal */
export declare const Level$inboundSchema: z.ZodType<Level, z.ZodTypeDef, unknown>;
/** @internal */
export type Level$Outbound = {
    source_value?: Category4$Outbound | string | number | boolean | Array<any> | null | undefined;
    value?: string | null | undefined;
};
/** @internal */
export declare const Level$outboundSchema: z.ZodType<Level$Outbound, z.ZodTypeDef, Level>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace Level$ {
    /** @deprecated use `Level$inboundSchema` instead. */
    const inboundSchema: z.ZodType<Level, z.ZodTypeDef, unknown>;
    /** @deprecated use `Level$outboundSchema` instead. */
    const outboundSchema: z.ZodType<Level$Outbound, z.ZodTypeDef, Level>;
    /** @deprecated use `Level$Outbound` instead. */
    type Outbound = Level$Outbound;
}
/** @internal */
export declare const Category$inboundSchema: z.ZodType<Category, z.ZodTypeDef, unknown>;
/** @internal */
export type Category$Outbound = {
    active?: boolean | null | undefined;
    id?: string | null | undefined;
    level?: Level$Outbound | null | undefined;
    name?: string | null | undefined;
    remote_id?: string | null | undefined;
    unified_custom_fields?: {
        [k: string]: any;
    } | null | undefined;
};
/** @internal */
export declare const Category$outboundSchema: z.ZodType<Category$Outbound, z.ZodTypeDef, Category>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace Category$ {
    /** @deprecated use `Category$inboundSchema` instead. */
    const inboundSchema: z.ZodType<Category, z.ZodTypeDef, unknown>;
    /** @deprecated use `Category$outboundSchema` instead. */
    const outboundSchema: z.ZodType<Category$Outbound, z.ZodTypeDef, Category>;
    /** @deprecated use `Category$Outbound` instead. */
    type Outbound = Category$Outbound;
}
//# sourceMappingURL=category.d.ts.map