stability-ai
Version:
Node SDK for Stability AI REST API
202 lines (201 loc) • 10.6 kB
TypeScript
import * as V1User from './v1/user';
import * as V1Engines from './v1/engines';
import * as V1Generation from './v1/generation';
import * as V2BetaStableVideoImageToVideo from './v2beta/stable-video/image-to-video';
import * as V2BetaStableImageEdit from './v2beta/stable-image/edit';
import * as V2BetaStableImageGenerate from './v2beta/stable-image/generate';
import * as V2BetaStableImageResults from './v2beta/stable-image/results';
import * as V2BetaStableImageUpscale from './v2beta/stable-image/upscale';
import { StabilityAIContentResponse } from './util';
declare class StabilityAI {
private apiKey;
private organiation?;
private clientId?;
private clientVersion?;
constructor(apiKey: string);
protected get authHeaders(): {
Authorization: string;
};
protected get orgAuthHeaders(): {
Organization?: string | undefined;
'Stability-Client-ID'?: string | undefined;
'Stability-Client-Version'?: string | undefined;
Authorization: string;
};
get v1(): {
user: {
account: () => Promise<V1User.AccountResponse>;
balance: () => Promise<V1User.BalanceResponse>;
};
engines: {
list: () => Promise<V1Engines.ListResponse>;
};
generation: {
textToImage: (engine_id: V1Generation.EngineId, text_prompts: V1Generation.TextPrompt[], options?: ({
height?: number | undefined;
width?: number | undefined;
} & V1Generation.V1GenerationOptionalParams) | undefined) => Promise<StabilityAIContentResponse[]>;
imageToImage: (engine_id: V1Generation.EngineId, text_prompts: V1Generation.TextPrompt[], init_image: string, options?: (({
mode: "IMAGE_STRENGTH";
image_strength?: number | undefined;
} | {
mode: "STEP_SCHEDULE";
step_schedule_start?: number | undefined;
step_schedule_end?: number | undefined;
}) & V1Generation.V1GenerationOptionalParams) | undefined) => Promise<StabilityAIContentResponse[]>;
imageToImageMasking: (engine_id: V1Generation.EngineId, text_prompts: V1Generation.TextPrompt[], init_image: string, options: ({
mask_source: "MASK_IMAGE_WHITE" | "MASK_IMAGE_BLACK";
mask_image: string;
} | {
mask_source: "INIT_IMAGE_ALPHA";
}) & V1Generation.V1GenerationOptionalParams) => Promise<StabilityAIContentResponse[]>;
};
};
get v2beta(): {
stable3D: {
stableFast3D: (image: string, options?: {
textureResolution?: number | undefined;
foregroundRatio?: number | undefined;
} | undefined) => Promise<StabilityAIContentResponse>;
};
stableVideo: {
imageToVideo: (image: string, cfgScale?: number | undefined, motionBucketId?: number | undefined, options?: {
seed?: number | undefined;
} | undefined) => Promise<V2BetaStableVideoImageToVideo.ImageToVideoResponse>;
imageToVideoResult: (id: string) => Promise<V2BetaStableVideoImageToVideo.ImageToVideoResultResponse>;
};
stableImage: {
control: {
sketch: (image: string, prompt: string, options?: {
controlStrength?: number | undefined;
negativePrompt?: string | undefined;
seed?: number | undefined;
outputFormat?: import("./util").OutputFormat | undefined;
} | undefined) => Promise<StabilityAIContentResponse>;
structure: (image: string, prompt: string, options?: {
controlStrength?: number | undefined;
negativePrompt?: string | undefined;
seed?: number | undefined;
outputFormat?: import("./util").OutputFormat | undefined;
} | undefined) => Promise<StabilityAIContentResponse>;
style: (image: string, prompt: string, options?: {
negativePrompt?: string | undefined;
aspectRatio?: V2BetaStableImageGenerate.AspectRatio | undefined;
fidelity?: number | undefined;
seed?: number | undefined;
outputFormat?: import("./util").OutputFormat | undefined;
} | undefined) => Promise<StabilityAIContentResponse>;
};
edit: {
erase: (image: string, options?: {
mask?: string | undefined;
seed?: number | undefined;
outputFormat?: import("./util").OutputFormat | undefined;
} | undefined) => Promise<StabilityAIContentResponse>;
inpaint: (image: string, prompt: string, options?: {
mask?: string | undefined;
negativePrompt?: string | undefined;
seed?: number | undefined;
outputFormat?: import("./util").OutputFormat | undefined;
} | undefined) => Promise<StabilityAIContentResponse>;
outpaint: (image: string, options: {
prompt?: string | undefined;
seed?: number | undefined;
outputFormat?: import("./util").OutputFormat | undefined;
} & ({
left: number;
right?: number | undefined;
up?: number | undefined;
down?: number | undefined;
} | {
left?: number | undefined;
right: number;
up?: number | undefined;
down?: number | undefined;
} | {
left?: number | undefined;
right?: number | undefined;
up: number;
down?: number | undefined;
} | {
left?: number | undefined;
right?: number | undefined;
up?: number | undefined;
down: number;
})) => Promise<StabilityAIContentResponse>;
searchAndReplace: (image: string, prompt: string, searchPrompt: string, options?: {
negativePrompt?: string | undefined;
seed?: number | undefined;
outputFormat?: import("./util").OutputFormat | undefined;
} | undefined) => Promise<StabilityAIContentResponse>;
removeBackground: (image: string, options?: {
outputFormat?: import("./util").OutputFormat | undefined;
} | undefined) => Promise<StabilityAIContentResponse>;
replaceBackgroundAndRelight: (image: string, options?: {
backgroundPrompt?: string | undefined;
backgroundReference?: string | undefined;
foregroundPrompt?: string | undefined;
negativePrompt?: string | undefined;
preserveOriginalSubject?: number | undefined;
originalBackgroundDepth?: number | undefined;
keepOriginalBackground?: boolean | undefined;
lightSourceDirection?: "left" | "right" | "above" | "below" | undefined;
lightReference?: string | undefined;
lightSourceStrength?: number | undefined;
seed?: number | undefined;
outputFormat?: import("./util").OutputFormat | undefined;
} | undefined) => Promise<V2BetaStableImageEdit.ReplaceBackgroundAndRelightResponse>;
};
generate: {
ultra: (prompt: string, options?: {
aspectRatio?: V2BetaStableImageGenerate.AspectRatio | undefined;
negativePrompt?: string | undefined;
seed?: number | undefined;
outputFormat?: import("./util").OutputFormat | undefined;
} | undefined) => Promise<StabilityAIContentResponse>;
core: (prompt: string, options?: {
aspectRatio?: V2BetaStableImageGenerate.AspectRatio | undefined;
negativePrompt?: string | undefined;
seed?: number | undefined;
outputFormat?: import("./util").OutputFormat | undefined;
} | undefined) => Promise<StabilityAIContentResponse>;
sd3: (prompt: string, options?: ({
model?: "sd3" | "sd3-turbo" | undefined;
seed?: number | undefined;
outputFormat?: "jpeg" | "png" | undefined;
} & ({
mode: "text-to-image";
aspectRatio?: V2BetaStableImageGenerate.AspectRatio | undefined;
} | {
mode: "image-to-image";
image: string;
strength: number;
}) & ({
model: "sd3-turbo";
} | {
model?: "sd3" | undefined;
negativePrompt?: string | undefined;
})) | undefined) => Promise<StabilityAIContentResponse>;
};
results: {
fetchAsyncGenerationResult: (id: string) => Promise<V2BetaStableImageResults.FetchAsyncGenerationResultResponse>;
};
upscale: {
conservative: (image: string, prompt: string, options?: {
negativePrompt?: string | undefined;
outputFormat?: import("./util").OutputFormat | undefined;
seed?: number | undefined;
creativity?: number | undefined;
} | undefined) => Promise<StabilityAIContentResponse>;
startCreative: (image: string, prompt: string, options?: {
negativePrompt?: string | undefined;
outputFormat?: import("./util").OutputFormat | undefined;
seed?: number | undefined;
creativity?: number | undefined;
} | undefined) => Promise<V2BetaStableImageUpscale.CreativeUpscaleResponse>;
fetchCreativeResult: (id: string, outputFormat: import("./util").OutputFormat) => Promise<V2BetaStableImageUpscale.CreativeUpscaleResultResponse>;
};
};
};
}
export default StabilityAI;