import * as z from "zod";
import { ClosedEnum } from "../../types/enums.js";
import { Result as SafeParseResult } from "../../types/fp.js";
import { SDKValidationError } from "../errors/sdkvalidationerror.js";
export declare const CreateResourceStatus: {
    readonly Active: "active";
    readonly Tobedeleted: "tobedeleted";
};
export type CreateResourceStatus = ClosedEnum<typeof CreateResourceStatus>;
export declare const CreateResourceRole: {
    readonly Primary: "primary";
    readonly Secondary: "secondary";
};
export type CreateResourceRole = ClosedEnum<typeof CreateResourceRole>;
export declare const CreateResourceImportance: {
    readonly Primary: "primary";
    readonly Secondary: "secondary";
};
export type CreateResourceImportance = ClosedEnum<typeof CreateResourceImportance>;
export type CreateResourceResource = {
    sourcedId?: string | undefined;
    status?: CreateResourceStatus | undefined;
    dateLastModified?: Date | undefined;
    metadata?: {
        [k: string]: any;
    } | null | undefined;
    title: string;
    roles?: Array<CreateResourceRole> | undefined;
    importance?: CreateResourceImportance | undefined;
    vendorResourceId: string;
    vendorId?: string | undefined;
    applicationId?: string | undefined;
};
export type CreateResourceRequest = {
    resource: CreateResourceResource;
};
export type CreateResourceSourcedIdPairs = {
    suppliedSourcedId: string;
    allocatedSourcedId: string;
};
/**
 * Resource successfully created
 */
export type CreateResourceResponse = {
    sourcedIdPairs: CreateResourceSourcedIdPairs;
};
/** @internal */
export declare const CreateResourceStatus$inboundSchema: z.ZodNativeEnum<typeof CreateResourceStatus>;
/** @internal */
export declare const CreateResourceStatus$outboundSchema: z.ZodNativeEnum<typeof CreateResourceStatus>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace CreateResourceStatus$ {
    /** @deprecated use `CreateResourceStatus$inboundSchema` instead. */
    const inboundSchema: z.ZodNativeEnum<{
        readonly Active: "active";
        readonly Tobedeleted: "tobedeleted";
    }>;
    /** @deprecated use `CreateResourceStatus$outboundSchema` instead. */
    const outboundSchema: z.ZodNativeEnum<{
        readonly Active: "active";
        readonly Tobedeleted: "tobedeleted";
    }>;
}
/** @internal */
export declare const CreateResourceRole$inboundSchema: z.ZodNativeEnum<typeof CreateResourceRole>;
/** @internal */
export declare const CreateResourceRole$outboundSchema: z.ZodNativeEnum<typeof CreateResourceRole>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace CreateResourceRole$ {
    /** @deprecated use `CreateResourceRole$inboundSchema` instead. */
    const inboundSchema: z.ZodNativeEnum<{
        readonly Primary: "primary";
        readonly Secondary: "secondary";
    }>;
    /** @deprecated use `CreateResourceRole$outboundSchema` instead. */
    const outboundSchema: z.ZodNativeEnum<{
        readonly Primary: "primary";
        readonly Secondary: "secondary";
    }>;
}
/** @internal */
export declare const CreateResourceImportance$inboundSchema: z.ZodNativeEnum<typeof CreateResourceImportance>;
/** @internal */
export declare const CreateResourceImportance$outboundSchema: z.ZodNativeEnum<typeof CreateResourceImportance>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace CreateResourceImportance$ {
    /** @deprecated use `CreateResourceImportance$inboundSchema` instead. */
    const inboundSchema: z.ZodNativeEnum<{
        readonly Primary: "primary";
        readonly Secondary: "secondary";
    }>;
    /** @deprecated use `CreateResourceImportance$outboundSchema` instead. */
    const outboundSchema: z.ZodNativeEnum<{
        readonly Primary: "primary";
        readonly Secondary: "secondary";
    }>;
}
/** @internal */
export declare const CreateResourceResource$inboundSchema: z.ZodType<CreateResourceResource, z.ZodTypeDef, unknown>;
/** @internal */
export type CreateResourceResource$Outbound = {
    sourcedId?: string | undefined;
    status?: string | undefined;
    dateLastModified?: string | undefined;
    metadata?: {
        [k: string]: any;
    } | null | undefined;
    title: string;
    roles?: Array<string> | undefined;
    importance?: string | undefined;
    vendorResourceId: string;
    vendorId?: string | undefined;
    applicationId?: string | undefined;
};
/** @internal */
export declare const CreateResourceResource$outboundSchema: z.ZodType<CreateResourceResource$Outbound, z.ZodTypeDef, CreateResourceResource>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace CreateResourceResource$ {
    /** @deprecated use `CreateResourceResource$inboundSchema` instead. */
    const inboundSchema: z.ZodType<CreateResourceResource, z.ZodTypeDef, unknown>;
    /** @deprecated use `CreateResourceResource$outboundSchema` instead. */
    const outboundSchema: z.ZodType<CreateResourceResource$Outbound, z.ZodTypeDef, CreateResourceResource>;
    /** @deprecated use `CreateResourceResource$Outbound` instead. */
    type Outbound = CreateResourceResource$Outbound;
}
export declare function createResourceResourceToJSON(createResourceResource: CreateResourceResource): string;
export declare function createResourceResourceFromJSON(jsonString: string): SafeParseResult<CreateResourceResource, SDKValidationError>;
/** @internal */
export declare const CreateResourceRequest$inboundSchema: z.ZodType<CreateResourceRequest, z.ZodTypeDef, unknown>;
/** @internal */
export type CreateResourceRequest$Outbound = {
    resource: CreateResourceResource$Outbound;
};
/** @internal */
export declare const CreateResourceRequest$outboundSchema: z.ZodType<CreateResourceRequest$Outbound, z.ZodTypeDef, CreateResourceRequest>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace CreateResourceRequest$ {
    /** @deprecated use `CreateResourceRequest$inboundSchema` instead. */
    const inboundSchema: z.ZodType<CreateResourceRequest, z.ZodTypeDef, unknown>;
    /** @deprecated use `CreateResourceRequest$outboundSchema` instead. */
    const outboundSchema: z.ZodType<CreateResourceRequest$Outbound, z.ZodTypeDef, CreateResourceRequest>;
    /** @deprecated use `CreateResourceRequest$Outbound` instead. */
    type Outbound = CreateResourceRequest$Outbound;
}
export declare function createResourceRequestToJSON(createResourceRequest: CreateResourceRequest): string;
export declare function createResourceRequestFromJSON(jsonString: string): SafeParseResult<CreateResourceRequest, SDKValidationError>;
/** @internal */
export declare const CreateResourceSourcedIdPairs$inboundSchema: z.ZodType<CreateResourceSourcedIdPairs, z.ZodTypeDef, unknown>;
/** @internal */
export type CreateResourceSourcedIdPairs$Outbound = {
    suppliedSourcedId: string;
    allocatedSourcedId: string;
};
/** @internal */
export declare const CreateResourceSourcedIdPairs$outboundSchema: z.ZodType<CreateResourceSourcedIdPairs$Outbound, z.ZodTypeDef, CreateResourceSourcedIdPairs>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace CreateResourceSourcedIdPairs$ {
    /** @deprecated use `CreateResourceSourcedIdPairs$inboundSchema` instead. */
    const inboundSchema: z.ZodType<CreateResourceSourcedIdPairs, z.ZodTypeDef, unknown>;
    /** @deprecated use `CreateResourceSourcedIdPairs$outboundSchema` instead. */
    const outboundSchema: z.ZodType<CreateResourceSourcedIdPairs$Outbound, z.ZodTypeDef, CreateResourceSourcedIdPairs>;
    /** @deprecated use `CreateResourceSourcedIdPairs$Outbound` instead. */
    type Outbound = CreateResourceSourcedIdPairs$Outbound;
}
export declare function createResourceSourcedIdPairsToJSON(createResourceSourcedIdPairs: CreateResourceSourcedIdPairs): string;
export declare function createResourceSourcedIdPairsFromJSON(jsonString: string): SafeParseResult<CreateResourceSourcedIdPairs, SDKValidationError>;
/** @internal */
export declare const CreateResourceResponse$inboundSchema: z.ZodType<CreateResourceResponse, z.ZodTypeDef, unknown>;
/** @internal */
export type CreateResourceResponse$Outbound = {
    sourcedIdPairs: CreateResourceSourcedIdPairs$Outbound;
};
/** @internal */
export declare const CreateResourceResponse$outboundSchema: z.ZodType<CreateResourceResponse$Outbound, z.ZodTypeDef, CreateResourceResponse>;
/**
 * @internal
 * @deprecated This namespace will be removed in future versions. Use schemas and types that are exported directly from this module.
 */
export declare namespace CreateResourceResponse$ {
    /** @deprecated use `CreateResourceResponse$inboundSchema` instead. */
    const inboundSchema: z.ZodType<CreateResourceResponse, z.ZodTypeDef, unknown>;
    /** @deprecated use `CreateResourceResponse$outboundSchema` instead. */
    const outboundSchema: z.ZodType<CreateResourceResponse$Outbound, z.ZodTypeDef, CreateResourceResponse>;
    /** @deprecated use `CreateResourceResponse$Outbound` instead. */
    type Outbound = CreateResourceResponse$Outbound;
}
export declare function createResourceResponseToJSON(createResourceResponse: CreateResourceResponse): string;
export declare function createResourceResponseFromJSON(jsonString: string): SafeParseResult<CreateResourceResponse, SDKValidationError>;
//# sourceMappingURL=createresource.d.ts.map