import type { components } from '../generated/api.js';
import type { PersonaId } from '../core/branded-types.js';
import { WorkspaceScopedResource } from './base.js';
import type { ListParams } from '../core/utils.js';
export interface ListPersonasParams extends ListParams {
    search?: string | null;
    sort_by?: string | null;
}
export declare class PersonasResource extends WorkspaceScopedResource {
    list(params?: ListPersonasParams): Promise<{
        continuation_token?: number | null | undefined;
        has_more: boolean;
        items: {
            background: string;
            communication_style: {
                [x: string]: unknown;
            };
            created_at: string;
            default_language: string;
            developed_by: string;
            id: string;
            name: string;
            role: string;
            updated_at: string;
            workspace_id: string;
        }[];
        total?: number | null | undefined;
    } & import("../index.js").ResponseMetadata>;
    listAutoPaging(params?: ListPersonasParams): AsyncGenerator<{
        background: string;
        communication_style: {
            [x: string]: unknown;
        };
        created_at: string;
        default_language: string;
        developed_by: string;
        id: string;
        name: string;
        role: string;
        updated_at: string;
        workspace_id: string;
    }, any, any>;
    create(body: components['schemas']['CreatePersonaRequest']): Promise<{
        background: string;
        communication_style: {
            [x: string]: unknown;
        };
        created_at: string;
        default_language: string;
        developed_by: string;
        id: string;
        name: string;
        role: string;
        updated_at: string;
        workspace_id: string;
    } & import("../index.js").ResponseMetadata>;
    get(personaId: PersonaId | string): Promise<{
        background: string;
        communication_style: {
            [x: string]: unknown;
        };
        created_at: string;
        default_language: string;
        developed_by: string;
        id: string;
        name: string;
        role: string;
        updated_at: string;
        workspace_id: string;
    } & import("../index.js").ResponseMetadata>;
    update(personaId: PersonaId | string, body: components['schemas']['UpdatePersonaRequest']): Promise<{
        background: string;
        communication_style: {
            [x: string]: unknown;
        };
        created_at: string;
        default_language: string;
        developed_by: string;
        id: string;
        name: string;
        role: string;
        updated_at: string;
        workspace_id: string;
    } & import("../index.js").ResponseMetadata>;
    delete(personaId: PersonaId | string): Promise<void>;
}
//# sourceMappingURL=personas.d.ts.map