import { OrganizationResult } from '../types/common';
export interface OrganizationModuleConfig {
    apiUrl: string;
    timeout?: number;
    onError?: (error: any) => void;
}
/**
 * Organization Management Module for SecKav SDK
 * Handles organization CRUD operations and member management
 */
export declare class OrganizationModule {
    private config;
    constructor(config: OrganizationModuleConfig);
    /**
     * Create a new organization
     */
    createOrganization(token: string, name: string, description?: string, domain?: string): Promise<OrganizationResult>;
    /**
     * Get all organizations for the user
     */
    getOrganizations(token: string): Promise<OrganizationResult>;
    /**
     * Get organization by ID
     */
    getOrganizationById(token: string, organizationId: string): Promise<OrganizationResult>;
    /**
     * Update organization
     */
    updateOrganization(token: string, organizationId: string, updates: {
        name?: string;
        description?: string;
        domain?: string;
    }): Promise<OrganizationResult>;
    /**
     * Delete organization
     */
    deleteOrganization(token: string, organizationId: string): Promise<OrganizationResult>;
    /**
     * Add member to organization
     */
    addMember(token: string, organizationId: string, memberData: {
        email: string;
        role?: string;
    }): Promise<OrganizationResult>;
    /**
     * Remove member from organization
     */
    removeMember(token: string, organizationId: string, memberId: string): Promise<OrganizationResult>;
    /**
     * Get module information
     */
    getInfo(): {
        name: string;
        version: string;
        description: string;
        apiUrl: string;
    };
}
//# sourceMappingURL=Organization.d.ts.map